Julien Templier
ec55db7494
ASYLUM: Fix some invalid array accesses, a missing array delete and a potential NULL pointer use
...
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@770 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:52 +02:00
Filippos Karapetis
ebb7bc6673
ASYLUM: Sync with trunk
...
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@769 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:51 +02:00
Julien Templier
98e29bbe0e
ASYLUM: Implement mouseLeftDown() function for KeyHidesTo and Youth board puzzles
...
- Add new shared function PuzzleBoard::checkSlots()
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@768 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:51 +02:00
Julien Templier
6a5257f0ce
ASYLUM: Implement PuzzleBoardSalvation::mouseLeftDown()
...
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@767 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:51 +02:00
Julien Templier
62f092c54d
ASYLUM: Add missing check in PuzzleBoard::update()
...
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@766 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:51 +02:00
Julien Templier
aefb29447f
ASYLUM: Implement PuzzleBoard::init()
...
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@765 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:51 +02:00
Julien Templier
5632921ca5
ASYLUM: Implement PuzzleBoard::updateCursor()
...
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@764 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:51 +02:00
Julien Templier
dce22936ad
ASYLUM: Implement shared Board puzzle methods
...
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@763 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:51 +02:00
Julien Templier
365ceb1b4f
ASYLUM: Add base PuzzleBoard class for Board puzzles
...
- Move reset() and activate() methods to base class
- Add stopSound() helper function
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@762 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:50 +02:00
Julien Templier
148b5608b7
ASYLUM: Add character maps for Board puzzles
...
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@761 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:50 +02:00
Julien Templier
f5994d02a8
ASYLUM: Add stubs for Board puzzles
...
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@760 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:50 +02:00
Julien Templier
4cfedb290d
ASYLUM: Implement some of the Hive puzzles methods
...
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@759 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:50 +02:00
Julien Templier
2b8aea3835
ASYLUM: Add stubs for Hive puzzles
...
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@758 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:50 +02:00
Julien Templier
925c146a61
ASYLUM: Implement PuzzlePipes::updateCursor()
...
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@757 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:50 +02:00
Julien Templier
35db68fb7c
ASYLUM: Implement Actor::updatePlayerChapter9()
...
Also update shared data in Actor::enableActorsChapter2()
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@756 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:50 +02:00
Julien Templier
22f77dd05c
ASYLUM: Overhaul script processing
...
This fixes the following issues:
- screen freeze when examining objects
- infinite loop when playing some animations
- infinite loop when starting dialogs
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@755 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:49 +02:00
Julien Templier
6186775f36
ASYLUM: Add stubs for Pipes puzzle
...
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@754 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:49 +02:00
Julien Templier
424c02a6af
ASYLUM: Fix warning in TimeMachine puzzle
...
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@753 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:49 +02:00
Julien Templier
265d18ee14
ASYLUM: Implement proper Scene::hitTestPixel()
...
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@752 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:49 +02:00
Julien Templier
fc53180f5f
ASYLUM: Implement Lock puzzle
...
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@751 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:49 +02:00
Julien Templier
fa0705770b
ASYLUM: Implement parts of Writings puzzle
...
The original draws to a surface on initialization and then uses that surface when updating the screen.
It also uses masked drawing which we do not implement yet.
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@750 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:49 +02:00
Julien Templier
26eae3bd44
ASYLUM: Fix a typo in Text::draw and add some comments
...
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@749 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:48 +02:00
Julien Templier
cb86e1b524
ASYLUM: Finish implementation of Wheel puzzle
...
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@748 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:48 +02:00
Julien Templier
8f0b6e04ba
ASYLUM: Make sure we don't use negative modulo with unsigned int values in PuzzleTimeMachine
...
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@747 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:48 +02:00
Julien Templier
76e623a681
ASYLUM: Rename rain frame index
...
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@746 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:48 +02:00
Julien Templier
55a1bca99c
ASYLUM: Fix regression with use of evt.mouse in puzzles updateCursor functions
...
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@745 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:48 +02:00
Julien Templier
5acbe01dd8
ASYLUM: Rename special Scene chapter 5 function to drawRain
...
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@744 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:48 +02:00
Alex Bevilacqua
beb8ef9da9
ASYLUM: fix linux compile
...
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@743 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:48 +02:00
Filippos Karapetis
a9ca52abef
ASYLUM: Fixed compilation after the latest trunk changes
...
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@742 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:47 +02:00
Julien Templier
09fd8412f4
ASYLUM: Implement Wheel puzzle helper functions
...
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@741 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:47 +02:00
Julien Templier
25df731c64
ASYLUM: Implement Wheel puzzle initialization
...
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@740 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:47 +02:00
Julien Templier
8b02d1b6c6
ASYLUM: Revert back to previous Puzzle::key() implementation
...
- Add new keyExit() method for other puzzles
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@739 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:47 +02:00
Julien Templier
b52bed63d8
ASYLUM: Refactor puzzle event handling
...
- Change default key method to switch back to the scene on right click
- Pass current event to all event handling methods
- Implement mouseLeftDown, mouseLeftUp, mouseRightDown and/or mouseRighUp instead of a single mouse method
- Remove most uses of Cursor::position()
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@738 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:47 +02:00
Julien Templier
9284925835
ASYLUM: Use local _point for coordinates in PuzzleTimeMachine
...
Those coordinates are updated from the existing points values
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@737 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:47 +02:00
Julien Templier
81a1d389b1
ASYLUM: Cleanup Screen::clip() and fix wrong sign in Screen::blt()
...
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@736 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:47 +02:00
Julien Templier
ecdfe4532b
ASYLUM: Implement frame indexes updates in PuzzleTimeMachine
...
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@735 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:46 +02:00
Julien Templier
2dbec0c5e1
ASYLUM: Add reset() method to PuzzleMorgueDoor
...
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@734 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:46 +02:00
Julien Templier
05fc5ab399
ASYLUM: Updated chapter 11 name (kResourcePackMorgueAndCemetery)
...
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@733 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:46 +02:00
Julien Templier
aed293bdea
ASYLUM: Implement beginning of TimeMachine puzzle
...
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@732 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:46 +02:00
Julien Templier
254366a3ee
ASYLUM: Implement parts of puzzle 11
...
This does not seem to reference valid graphic resources.
It might be unfinished logic code that was left there and
never used in the game
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@731 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:46 +02:00
Julien Templier
d7650f0409
ASYLUM: Do not try to load kResourceNone resources in GraphicResource::load()
...
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@730 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:46 +02:00
Julien Templier
ea4745df71
ASYLUM: Puzzle 13 is really the clock puzzle
...
- Rename former clock puzzle to puzzle 11
- Implement proper clock puzzle
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@729 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:46 +02:00
Julien Templier
7e9d838945
ASYLUM: Implement rest of PuzzleMorgueDoor::updateState()
...
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@728 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:45 +02:00
Julien Templier
2af4710142
ASYLUM: Implement parts of PuzzleMorgueDoor::updateState()
...
- Add enum for puzzle objects
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@727 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:45 +02:00
Julien Templier
c6b1ad3dae
ASYLUM: Implement PuzzleMorgueDoor::updateCursor()
...
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@726 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:45 +02:00
Julien Templier
1ec34182d6
ASYLUM: Implement first part of Morgue Door puzzle
...
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@725 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:45 +02:00
Julien Templier
f5796088c0
ASYLUM: Implement rest of Fisherman puzzle
...
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@724 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:45 +02:00
Julien Templier
ec57d4bca7
ASYLUM: Implement parts of Fisherman puzzle
...
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@723 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:45 +02:00
Julien Templier
2ec06b5da7
ASYLUM: Use per-entry current line in script manager
...
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@722 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:45 +02:00
Julien Templier
d145f93a7c
ASYLUM: Use switchScene() when switching scenes through the debugger
...
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@721 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:45 +02:00