ScummVM API documentation
Nancy::Action::RaycastPuzzle Class Reference
Inheritance diagram for Nancy::Action::RaycastPuzzle:
Nancy::Action::PuzzleRecord Nancy::Action::RenderActionRecord Nancy::Action::ActionRecord Nancy::RenderObject

Public Member Functions

void init () override
 
void registerGraphics () override
 
void readData (Common::SeekableReadStream &stream) override
 
void execute () override
 
void onPause (bool pause) override
 
void handleInput (NancyInput &input) override
 
void updateGraphics () override
 
bool isViewportRelative () const override
 
- Public Member Functions inherited from Nancy::Action::PuzzleRecord
 PuzzleRecord (uint zOrder)
 
Common::String getRecordExtraInfo () const override
 
- Public Member Functions inherited from Nancy::Action::RenderActionRecord
 RenderActionRecord (uint zOrder)
 
 RenderActionRecord (RenderActionRecord &&)=default
 
- Public Member Functions inherited from Nancy::Action::ActionRecord
virtual CursorManager::CursorType getHoverCursor () const
 
virtual bool cursorSetFromScript () const
 
virtual bool canHaveHotspot () const
 
virtual bool survivesSceneChange (bool nextSceneIsNoArt) const
 
- Public Member Functions inherited from Nancy::RenderObject
 RenderObject (uint16 zOrder)
 
 RenderObject (uint16 zOrder, Graphics::ManagedSurface &surface, const Common::Rect &srcBounds, const Common::Rect &destBounds)
 
 RenderObject (RenderObject &&)=default
 
void moveTo (const Common::Point &position)
 
void moveTo (const Common::Rect &bounds)
 
void setVisible (bool visible)
 
void setTransparent (bool isTransparent)
 
bool isVisible () const
 
bool needsRedraw () const
 
void setNeedsRedraw (bool needsRedraw)
 
void setHasMoved (bool hasMoved)
 
bool isNativeResolution () const
 
void setNativeResolution (bool isNative)
 
void grabPalette (byte *colors, uint paletteStart=0, uint paletteSize=256)
 
void setPalette (const Common::Path &paletteName, uint paletteStart=0, uint paletteSize=256)
 
void setPalette (const byte *colors, uint paletteStart=0, uint paletteSize=256)
 
bool hasMoved () const
 
void updatePreviousScreenPosition ()
 
Common::Rect getScreenPosition () const
 
Common::Rect getScreenPositionRaw () const
 
Common::Rect getPreviousScreenPosition () const
 
Common::Rect convertToLocal (const Common::Rect &screen) const
 
Common::Rect convertToScreen (const Common::Rect &rect) const
 
Common::Rect getBounds () const
 
uint16 getZOrder () const
 
void setZOrder (uint16 z)
 

Protected Member Functions

Common::String getRecordTypeName () const override
 
void validateMap ()
 
void createTextureLightSourcing (Common::Array< Graphics::ManagedSurface > *array, const Common::Path &textureName)
 
void drawMap ()
 
void updateMap ()
 
void drawMaze ()
 
void clearZBuffer ()
 
void checkSwitch ()
 
void checkExit ()
 
- Protected Member Functions inherited from Nancy::Action::PuzzleRecord
void loadImage ()
 
void initViewportSurface ()
 
void setDataCursor (uint16 cursorType, bool hotspotVariant=true) const
 
Common::Point getHeldPiecePos (const Common::Point &mousePos, const Common::Rect &src, const Common::Point &offset) const
 
SoundDescription playSoundBlock (const RandomSoundBlock &block)
 
bool isSoundBlockPlaying (const RandomSoundBlock &block) const
 
void readExitHotspot (Common::SeekableReadStream &stream)
 
bool isExitHotspotHovered (const NancyInput &input) const
 
void setExitCursor () const
 
bool hoverExitHotspot (const NancyInput &input) const
 
bool hasSolveSound () const
 
void playSolveSound ()
 
bool isSolveSoundPlaying () const
 
- Protected Member Functions inherited from Nancy::Action::ActionRecord
void finishExecution ()
 

Protected Attributes

uint16 _mapWidth = 0
 
uint16 _mapHeight = 0
 
byte _wallHeight = 0
 
Common::String _switchSoundName
 
uint16 _switchSoundChannelID = 0
 
Common::String _unknownSoundName
 
uint16 _unknownSoundChannelID = 0
 
SoundDescription _dummySound
 
Common::Array< uint32 > _wallMap
 
Common::Array< uint32 > _infoMap
 
Common::Array< int16 > _floorMap
 
Common::Array< int16 > _ceilingMap
 
Common::Array< uint16 > _wallLightMap
 
Common::Array< uint16 > _floorCeilingLightMap
 
Common::Array< uint16 > _heightMap
 
Common::Array< uint16 > _wallLightMapBackup
 
Common::Array< uint16 > _floorCeilingLightMapBackup
 
uint16 _mapFullWidth = 0
 
uint16 _mapFullHeight = 0
 
RenderObject _map
 
Graphics::ManagedSurface _mapBaseSurface
 
double _pi = 3.141592653589793
 
uint _fov = 192
 
Common::Array< float > _sinTable
 
Common::Array< float > _cosTable
 
Common::HashMap< uint16, Common::Array< Graphics::ManagedSurface > > _wallTextures
 
Common::HashMap< uint16, Common::Array< Graphics::ManagedSurface > > _specialWallTextures
 
Common::HashMap< uint16, Common::Array< Graphics::ManagedSurface > > _ceilingTextures
 
Common::HashMap< uint16, Common::Array< Graphics::ManagedSurface > > _floorTextures
 
Common::HashMap< uint16, Common::Array< Graphics::ManagedSurface > > _exitFloorTextures
 
Common::Array< int32 > _wallCastColumnAngles
 
Common::Array< byte > _zBuffer
 
byte _lastZDepth = 0
 
Common::Array< float > _depthBuffer
 
int32 _leftmostAngle = -1
 
int32 _rightmostAngle = -1
 
float _playerX = -1
 
float _playerY = -1
 
int32 _playerRotation = 0
 
uint32 _playerAltitude = 88
 
float _rotationSingleStep = 4096.0 / (_pi * 2)
 
float _maxWorldDistance = 0.0
 
uint32 _lastMovementTime = 0
 
int _lastMouseX = -1
 
uint32 _nextSlowdownMovementTime = 0
 
byte _slowdownFramesLeft = 0
 
int32 _slowdownDeltaX = -1
 
int32 _slowdownDeltaY = -1
 
Common::Array< byte > _lightSwitchIDs
 
Common::Array< Common::Point > _lightSwitchPositions
 
Common::Array< bool > _lightSwitchStates
 
int _lightSwitchPlayerIsOn = -1
 
const RCPR * _puzzleData = nullptr
 
Common::SharedPtr< RaycastDeferredLoader > _loaderPtr
 
- Protected Attributes inherited from Nancy::Action::PuzzleRecord
Common::Path _imageName
 
Graphics::ManagedSurface _image
 
SceneChangeWithFlag _solveScene
 
SoundDescription _solveSound
 
uint16 _solveSoundDelay = 0
 
SceneChangeWithFlag _exitScene
 
Common::Rect _exitHotspot
 
uint16 _exitCursorType = 0
 
bool _exitCursorFromData = false
 
- Protected Attributes inherited from Nancy::RenderObject
bool _needsRedraw
 
bool _isVisible
 
bool _hasMoved
 
bool _isNativeResolution = false
 
uint16 _z
 
Common::Rect _previousScreenPosition
 
Common::Rect _screenPosition
 

Additional Inherited Members

- Public Types inherited from Nancy::Action::ActionRecord
enum  ExecutionState { kBegin, kRun, kActionTrigger }
 
enum  ExecutionType { kOneShot = 1, kRepeating = 2 }
 
- Public Attributes inherited from Nancy::Action::ActionRecord
Common::String _description
 
Common::String _includeSource
 
byte _type
 
ExecutionType _execType
 
DependencyRecord _dependencies
 
bool _isActive
 
bool _isDone
 
bool _hasHotspot
 
Common::Rect _hotspot
 
ExecutionState _state
 
DependencyRecord * _cursorDependency
 
- Public Attributes inherited from Nancy::RenderObject
Graphics::ManagedSurface _drawSurface
 

The documentation for this class was generated from the following file: