Commit graph

97 commits

Author SHA1 Message Date
Alex Bevilacqua
52206f1189
ASYLUM: NEW SOUND SUBSYSTEM! This is still sort of WIP though because it's not a "true" implementation (direct from disassembly). It also doesn't really do anything with the new ambient sound queue, but the functionality's there for when we make more progress on the AmbientSoundItem initializations.
Also started to re-write updateBarriers(). The original is there as updateBarriers2() for the time being.

git-svn-id: http://asylumengine.googlecode.com/svn/trunk@362 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:50 +02:00
Alex Bevilacqua
ddcb9beab2
ASYLUM: Removed Shared singleton. Moved getAngle() to actor class (only place it's used so far). Added screen() and scene() getters to the engine for classes that need the references.
Moved a couple methods from the barrier class to worldstats (makes a bit more sense)

git-svn-id: http://asylumengine.googlecode.com/svn/trunk@355 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:49 +02:00
Alex Bevilacqua
72c1b3e398
ASYLUM: Removed Sound reference from Shared
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@354 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:49 +02:00
Alex Bevilacqua
9f39977ddd
ASYLUM: Removed Video reference from Shared
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@353 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:49 +02:00
Alex Bevilacqua
9868f8c40a
ASYLUM: oops (fixed: *** glibc detected *** /home/alex/workspaces/cpp/scummvm/scummvm: double free or corruption (out): 0x093a2668 ***)
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@352 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:49 +02:00
Alex Bevilacqua
badb49ed6d
ASYLUM: Moved the gameflags from SharedResources to the AsylumEngine. Also removed the OSystem member from the SharedResources (slowly phasing out the last singleton)
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@351 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:48 +02:00
Alex Bevilacqua
b4385f8e9e
ASYLUM: Removed the ScriptManager. The singleton functionality is rolled into the actionlist class (where it belongs)
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@348 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:48 +02:00
Alex Bevilacqua
2cb80c6d8d
ASYLUM: Removed sceneres. Scene resource loading is now handled in the scene constructor, and the parsing of worldstats, polygons and actions is farmed out to the relevant classes.
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@347 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:48 +02:00
Alex Bevilacqua
feb852bd8b
ASYLUM: Reworked the action list processor to use a function map as opposed to a switch tree. This is a cleaner solution, thought i'm not sure if there's a tradeoff as far as efficiency is concerned.
Also implemented the angle processing algorithm (and the associated lookup tables)

git-svn-id: http://asylumengine.googlecode.com/svn/trunk@328 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:45 +02:00
Alexandre Fontoura
619f8f86f6
ASYLUM: Preparing draw barriers...
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@314 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:43 +02:00
Alexandre Fontoura
ff72e9b326
ASYLUM: Refactoring and clean up!
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@313 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:43 +02:00
Alexandre Fontoura
688356d898
ASYLUM: Some work on processing Barriers. (Still WIP). This will initiate a change in Scene Update function to make it like original game. Some functions are already declared but nothing was done yet.
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@308 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:42 +02:00
Alexandre Fontoura
d9348e1388
ASYLUM: Reorganization Flags under Shared for the upcoming work on Update routines. Start working on UpdateBarrier(incomplete)
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@302 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:41 +02:00
Alex Bevilacqua
7cef62988d
ASYLUM: * Added a console command to show the currently active game flags
* Tweaked the logic for the JumpIfFlagSet opcode
* Added the two flag registrations that would be set if the intro ran to the main engine (so we can disable the intro for now)

git-svn-id: http://asylumengine.googlecode.com/svn/trunk@301 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:41 +02:00
Alex Bevilacqua
f48ab391ac
ASYLUM: Fixed a bug from the original game that caused the application to be locked (and occasionally crash) due to the fact that the application was locked in a while loop during the playing of the first sfx item after the intro video.
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@298 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:41 +02:00
Alexandre Fontoura
9e18edaee3
ASYLUM: Some work on PlayAnimation command. It will only work with a proper BarrierUpdate according with each flag type.
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@296 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:41 +02:00
Alex Bevilacqua
f75fea2be6
ASYLUM: formatting
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@294 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:40 +02:00
Alex Bevilacqua
26d456e5be
ASYLUM: Game startup sequence added, and some minor cleanups.
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@293 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:40 +02:00
Alex Bevilacqua
54682e1f44
ASYLUM: Utilities class renamed to Shared. All common resources bound to shared singleton so they can be used by all engine components without needing a direct reference back to the engine variables (Screen, Sound, Video, Scene).
Better Pathfinding (you can actually walk around now)

git-svn-id: http://asylumengine.googlecode.com/svn/trunk@292 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:40 +02:00
Alex Bevilacqua
1769959bf8
ASYLUM: * A little work on Encounters (not much)
* The beginnings of actor pathfinding
* Created a new singleton called Utils (utilities.cpp/h). Need feedback as to whether or not we should use this as the common container for objects we only ever need to instantiate once (like screen, sound, video .. etc).

git-svn-id: http://asylumengine.googlecode.com/svn/trunk@288 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:39 +02:00
Alexandre Fontoura
66d248b589
ASYLUM: Changed struct of BlowUpPuzzle (its now part of a scene Scene). Need REVIEW please.
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@286 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:39 +02:00
Alexandre Fontoura
6aeb8057ce
ASYLUM: Finished VCR BlowUpPuzzle code.(Still missing some sound features like loop and stop specific sounds)
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@285 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:39 +02:00
Filippos Karapetis
db63436dcc
ASYLUM: Fixed compilation
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@281 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:38 +02:00
Alexandre Fontoura
100118ec5c
ASYLUM: More BlowUpPuzzle work. Press B to Switch between Scene & BlowUpPuzzle for test.
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@268 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:35 +02:00
Alex Bevilacqua
49ca9374f0
ASYLUM: Simplify loading of default action list
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@266 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:35 +02:00
Alex Bevilacqua
5cbfdcd695
ASYLUM: Started work on pathfinding. Currently I've disabled screen edge scrolling, and am drawing the active walk-able region's polygon
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@247 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:33 +02:00
Alex Bevilacqua
5939070342
ASYLUM: rolled checks for delayed scene changes and video into processDelayedEvents()
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@246 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:33 +02:00
Alex Bevilacqua
4e2fe3e3a8
ASYLUM: * clear debug channels on engine destruction
* cleanup

git-svn-id: http://asylumengine.googlecode.com/svn/trunk@245 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:33 +02:00
Alex Bevilacqua
3cfa2cbb4c
ASYLUM: Reworked the interpreter into a singleton ScriptManager. This will allow scripts to be run without needing access to an engine variable, and will allow us to remove some of the scene processing hacks.
Scripts are now being run on click events. This is pretty buggy, but it's to be expected at this point :)

git-svn-id: http://asylumengine.googlecode.com/svn/trunk@240 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:32 +02:00
Eugene Sandulenko
de517ddf1f
ASYLUM: More formatting. Basically tabify. SOmebody has wrong indentation setup. All
indents have to be tabs, not spaces.

git-svn-id: http://asylumengine.googlecode.com/svn/trunk@236 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:31 +02:00
Joseph Davies
c2a7b40396
ASYLUM: Commit for changes accidentally left out of r231.
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@232 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:31 +02:00
Joseph Davies
34e750d48d
ASYLUM: Added preliminary script interpreter and associated support functions and fixes. Added Debug channels.
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@224 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:30 +02:00
Joseph Davies
c8a173e5eb
ASYLUM: Fixed laggy cursor by removing exponential delay inside event loop. Changed delay to match apparent animation speed of original.
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@207 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:28 +02:00
Filippos Karapetis
762c5d0fa2
ASYLUM: Added a debug console, with a command to play any of the game's videos. Cleaned up the AsylumEngine class a bit
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@188 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:26 +02:00
Filippos Karapetis
1d4f3b236a
ASYLUM: More work on video subtitles (tested videos 0-6)
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@182 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:25 +02:00
Filippos Karapetis
8d75c0e780
ASYLUM: Delete the scene object in the engine's destructor
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@176 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:24 +02:00
Filippos Karapetis
261b47d718
ASYLUM: Added a parameter to playVideo(), used to toggle subtitles
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@175 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:24 +02:00
Filippos Karapetis
6298d422ff
ASYLUM: Some initial implementation for movie subtitles
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@169 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:23 +02:00
Alex Bevilacqua
070e8a1d86
ASYLUM: minor formatting
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@157 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:22 +02:00
Filippos Karapetis
e60812a50a
ASYLUM: Fixed compilation and updated the MSVC project file
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@138 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:19 +02:00
Filippos Karapetis
223a30e939
ASYLUM: Cleanup
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@134 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:19 +02:00
Filippos Karapetis
8b7c13b26f
ASYLUM: Renamed GameState to Scene
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@133 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:19 +02:00
Filippos Karapetis
519e4bd28e
ASYLUM: - Moved the game state outside the game menu
- Now we start at the first scene instead of the main menu
- The menu can be opened/closed now with the esc key, and "Return to game" works

git-svn-id: http://asylumengine.googlecode.com/svn/trunk@130 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:18 +02:00
Alexandre Fontoura
689a7484be
ASYLUM: Add GameState to handle scenes. Clean some stuffs. Changed scene constructor.
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@110 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:16 +02:00
Filippos Karapetis
bebce6c593
ASYLUM: Minimized dependencies and class visibility
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@103 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:15 +02:00
Filippos Karapetis
46da88fe15
ASYLUM: Renamed some leftover variables (state -> mainMenu)
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@97 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:14 +02:00
Filippos Karapetis
c2fe7353bf
ASYLUM: - Merged the State and MenuState classes into the MainMenu Class
- Renamed state.* to menu.*
- Added resource loader wrappers which take a resource pack and a resource entry as parameters

git-svn-id: http://asylumengine.googlecode.com/svn/trunk@96 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:14 +02:00
Filippos Karapetis
02c7d575ab
ASYLUM: Rewrote the resource loading code and simplified menu handling a bit in the process. The newly-added text code has been disabled for now, till it works with the new system
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@94 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:14 +02:00
Filippos Karapetis
6268e32726
ASYLUM: Moved the cursor and video related code outside the soon-to-be replaced resource manager
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@90 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:13 +02:00
Filippos Karapetis
6a8ee75809
ASYLUM: Moved sound-related functions to sound.* and graphic-related functions to screen.*
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@89 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:35:13 +02:00