Commit Graph
212 Commits
Author SHA1 Message Date
Julien Templier 351c466746 ASYLUM: Rename direction enum values
Also rename Actor::getDirection to Actor::direction and cleanup code

git-svn-id: http://asylumengine.googlecode.com/svn/trunk@566 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:21 +02:00
Julien Templier b3b0977555 ASYLUM: Implement more Actor::updateStatus* functions
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@565 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:21 +02:00
Alex Bevilacqua cba710ff8a ASYLUM: don't use itoa() as it's not portable (use sprintf() instead)
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@564 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:21 +02:00
Julien Templier 1ca905680c ASYLUM: Implement some Actor::updateStatus methods
- Add accessors for shared data & data2

git-svn-id: http://asylumengine.googlecode.com/svn/trunk@563 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:21 +02:00
Julien Templier ca4c5d1b49 ASYLUM: Implement more Actor helper functions
- Add updateNumbers public function
- Add rect, compareAngles, compare, compareX and compareY helper functions

git-svn-id: http://asylumengine.googlecode.com/svn/trunk@562 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:21 +02:00
Julien Templier 23c559939b ASYLUM: Implement a couple of small Actor helper functions
- Remove uses of _resources (replaced by ActorData)
- Add missing fields to ActorData struct (stubbed for now)
- Implement Actor::loadData()
- Rename Actor::update_40DE20() to Actor::updateAndDraw()

git-svn-id: http://asylumengine.googlecode.com/svn/trunk@561 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:21 +02:00
Julien Templier 7ed0b6eb65 ASYLUM: Update actor helper functions
- Distance is the euclidian distance between 2 vectors
- Add angle helper method
- Convert updateCoordinates to take 2 vectors (ie. points) too
- Switch the shared actor rect to a pair of vectors

git-svn-id: http://asylumengine.googlecode.com/svn/trunk@560 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:21 +02:00
Julien Templier fd5e272080 ASYLUM: Properly reset shared data in Actor::enableActorsChapter2
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@559 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:20 +02:00
Julien Templier 9362d3b943 ASYLUM: Use pow in Actor::distance().
Thanks to Arthur for noticing.

git-svn-id: http://asylumengine.googlecode.com/svn/trunk@558 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:20 +02:00
Julien Templier 3c3c0a5a4e ASYLUM: Fix compiler warnings (patch by DrMcCoy)
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@556 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:20 +02:00
Julien Templier f8838d5322 ASYLUM: Remove unused actor field
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@555 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:20 +02:00
Julien Templier e812374b9f ASYLUM: Add stubs for loading ActorData as part of the scene (and cleanup scene loading a bit)
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@554 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:20 +02:00
Julien Templier 16dd32098d ASYLUM: Add reaction-related Actor process methods
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@553 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:20 +02:00
Julien Templier a778f4e7a4 ASYLUM: Scene loading & actor logic
- Move ActionArea loading to its own method
- Add actor rect shared data
- Implement one more Actor::updateStatus function
- Add several Actor helper functions
- Make x, y, x1, y1, x2, y2 private and store as Common::Point

git-svn-id: http://asylumengine.googlecode.com/svn/trunk@550 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:19 +02:00
Julien Templier 5186ad9425 ASYLUM: Moved shared data to new structure
Some flags have a longer lifetime and should not be part of the scene instance.
Those are now part of the SharedData structure.
Also implements several actor::updateStatus methods, using the new shared data

git-svn-id: http://asylumengine.googlecode.com/svn/trunk@548 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:19 +02:00
Julien Templier 3e6f065a91 ASYLUM: Cleanup Pass 3
- Add proper init code for Object & BlowUpPuzzle classes
- Use Common::Rational in a few more places
- Add casts & const modifiers in proper places

git-svn-id: http://asylumengine.googlecode.com/svn/trunk@547 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:18 +02:00
Julien Templier d38322ebca ASYLUM: Cleanup Pass 1
- Add proper init code in some classes
- Add some missing deletes in destructors
- Add const modifiers in several places
- Switch tick variables (and several others) to uint32
- Update Polygon struct slightly (with count() method instead of variable)

git-svn-id: http://asylumengine.googlecode.com/svn/trunk@545 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:18 +02:00
Julien Templier 7c64f717ec ASYLUM: Add GraphicFrame helper functions
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@542 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:18 +02:00
Julien Templier 692ade2186 ASYLUM: Switch ActorDirection to an enumeration
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@541 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:18 +02:00
Alex Bevilacqua f5b8dfe959 ASYLUM: plug memory leak
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@540 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:17 +02:00
Arthur Blot 2fcf5167ac ASYLUM: Small fix for object and actor coordinates
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@539 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:17 +02:00
Julien Templier 50e69da09a ASYLUM: Implement Actor::getFieldValue()
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@538 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:17 +02:00
Julien Templier ea952cc33d ASYLUM: Implement Sound panning/adjustement methods
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@532 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:16 +02:00
Julien Templier d5e3c4536c ASYLUM: Remove checks for sound cache
All our files are on disk, so there is not need to check for cached music resources

git-svn-id: http://asylumengine.googlecode.com/svn/trunk@529 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:16 +02:00
Julien Templier 977afaa9c3 ASYLUM: Actor class was reading too much data
Scenes > 5 are now loading a bit further

git-svn-id: http://asylumengine.googlecode.com/svn/trunk@520 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:14 +02:00
Julien Templier b1c3d9d7e0 ASYLUM: Add some init code to Scene & Actor classes
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@519 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:14 +02:00
Julien Templier 32f3eed36c ASYLUM: Refactor Speech class
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@516 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:14 +02:00
Julien Templier 46d1acac79 ASYLUM: Small correction to Actor::updateStatus9
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@515 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:14 +02:00
Julien Templier d7c22354a6 ASYLUM: Add ResourceManager class
It will keep track of opened resource files and simplify handling of resource packs

git-svn-id: http://asylumengine.googlecode.com/svn/trunk@513 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:13 +02:00
Alex Bevilacqua fd534e562e ASYLUM: implement Actor::updateStatus9()
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@510 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:13 +02:00
Alex Bevilacqua fdb53b6b13 ASYLUM: expand Actor::toString to show a more detailed view when examining a particular actor
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@508 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:13 +02:00
Julien Templier 43805ab2d8 ASYLUM: Fix some problems with the Actor code
- Fix typos that prevented updateStatus functions from being called
- Initalize the encounter flags properly
- Update error strings for not yet implemented special sound functions

git-svn-id: http://asylumengine.googlecode.com/svn/trunk@502 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:12 +02:00
Julien Templier 88dab248d1 ASYLUM: Implement enableActorsChapter2
- Moved from Special class to Actor (as a static function)
- Added TODO for update of shared data

git-svn-id: http://asylumengine.googlecode.com/svn/trunk@500 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:12 +02:00
Julien Templier eae999fed4 ASYLUM: Implement special logic for chapter 2 (remaining part), 5 & 9
- Fix graphic resource leak in Actor & Object
- Replace WorldStats targetX, targetY and following variables into
a coordinate array.

git-svn-id: http://asylumengine.googlecode.com/svn/trunk@498 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:11 +02:00
Julien Templier 659a3e281e ASYLUM: Reduce header inter-dependency
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@494 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:10 +02:00
Julien Templier 4b449a14c2 ASYLUM: Treat ResourceId as an unsigned int
This should hopefully fix the overflow warnings until we convert
all callers to use the enum.

git-svn-id: http://asylumengine.googlecode.com/svn/trunk@493 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:10 +02:00
Julien Templier 96878fef6e ASYLUM: Implement special logic for Chapter 7
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@492 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:10 +02:00
Julien Templier dd6afe7523 ASYLUM: Use subsystems access macros in ActionList
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@491 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:10 +02:00
Julien Templier 582794ff12 ASYLUM: Implement special logic for chapters 1, parts of 2, 3, 4 and 6
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@488 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:10 +02:00
Julien Templier ce330b1a45 ASYLUM: Rename Barrier to Object
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@486 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:09 +02:00
Julien Templier 0eb39da884 ASYLUM: Enhance Debug console
- Add actors & objects debug commands for showing Actor and Object info (only name & id for now)
- Add ls command to list the engine files
- Add option to show only set/unset flags
- Add option to show action per index
- Add better help output
- Check validity of video index in video command

git-svn-id: http://asylumengine.googlecode.com/svn/trunk@485 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:09 +02:00
Alex Bevilacqua 7170f10f7b ASYLUM: even more GCC warnings silenced
- shadow declarations of x/y in actor class
- suggest parentheses around arithmetic in operand of ‘|’

git-svn-id: http://asylumengine.googlecode.com/svn/trunk@483 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:09 +02:00
Alex Bevilacqua 3dfab1cc46 ASYLUM: fix more GCC warnings (overflow in implicit constant conversion)
- minor whitespace cleanup as well

git-svn-id: http://asylumengine.googlecode.com/svn/trunk@482 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:09 +02:00
Julien Templier c62108194e ASYLUM: Implement Scene spec function for Chapter 1
- Implement parts of Barrier::playSounds

git-svn-id: http://asylumengine.googlecode.com/svn/trunk@480 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:08 +02:00
Julien Templier cf7c7ed9f6 ASYLUM: Cleanup Barrier::update
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@479 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:08 +02:00
Julien Templier d569216ea4 ASYLUM: Implement processUpdateList
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@478 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:08 +02:00
Julien Templier 29d47c54cc ASYLUM: Update scene drawing implementation
- Finish implementation of Actor::draw() & Barrier::draw()
- Add Scene::buildUpdateList
- Misc cleanup to Barrier functions

git-svn-id: http://asylumengine.googlecode.com/svn/trunk@477 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:08 +02:00
Julien Templier 1e04f736ed ASYLUM: Refactor Barrier class
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@475 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:08 +02:00
Julien Templier 3a64ce802a ASYLUM: Add helper macros for access to engine subsystems
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@474 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:07 +02:00
Julien Templier 4d08eeae4d ASYLUM: Implement Actor::updateStatusEnabled() && Actor::updateFinish()
- Fix uses of the global tick value

git-svn-id: http://asylumengine.googlecode.com/svn/trunk@473 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:07 +02:00