Commit Graph
104 Commits
Author SHA1 Message Date
Julien Templier c727c909a6 ASYLUM: Implement some missing parts of Screen::blitMasked() 2021-05-17 15:37:01 +02:00
Julien Templier c9d39ce3c2 ASYLUM: Add drawing rects and mask visualization 2021-05-17 15:37:00 +02:00
Julien Templier 2a4cf12823 ASYLUM: Fix showing of debug regions 2021-05-17 15:37:00 +02:00
Julien Templier 5b5cf905fa ASYLUM: Implement Screen::blitTranstable() and Screen::blitTranstableMirrored() 2021-05-17 15:36:58 +02:00
Julien Templier 5987db75f0 ASYLUM: Implement Screen::blitMasked() and some helper methods
- Fix mask rectangles calculation and check
2021-05-17 15:36:58 +02:00
Julien Templier 4325184d2a ASYLUM: Implement the rest of Screen::blit() and add stubs for all the helper blit functions 2021-05-17 15:36:58 +02:00
Julien Templier c920613363 ASYLUM: Remove colorkey parameter to blt* functions and use _useColorKey member instead 2021-05-17 15:36:58 +02:00
Julien Templier ee89b3837a ASYLUM: Implement Screen::addGraphicToQueueCrossfade() and add stub for Screen::blitCrossfade() 2021-05-17 15:36:58 +02:00
Julien Templier b9eb9f91ec ASYLUM: Screen::blitFast() does not need flags 2021-05-17 15:36:58 +02:00
Julien Templier 3ddd300f10 ASYLUM: Update Screen::draw() with mask source and destination rectangles calculation and add stub for Screen::blitMasked() 2021-05-17 15:36:57 +02:00
Julien Templier b3a4c7fc9f ASYLUM: Fix mirrored blit 2021-05-17 15:36:57 +02:00
Julien Templier 1db67c5c88 ASYLUM: Remove SVN keywords 2021-05-17 15:36:57 +02:00
Julien Templier 1526593cf0 ASYLUM: Replace several pairs of (x, y) parameters by Common::Point 2021-05-17 15:36:56 +02:00
Julien Templier 90d21d0ad8 ASYLUM: Add support for mirrored blit 2021-05-17 15:36:56 +02:00
Julien Templier 9f6d671569 ASYLUM: Change Screen::draw() functions to take Common::Point as source/destination parameters 2021-05-17 15:36:56 +02:00
Julien Templier 1b9c4dd404 ASYLUM: Add DrawFlags enumeration and update drawing functions parameters 2021-05-17 15:36:55 +02:00
Alex Bevilacqua 57229d51ab ASYLUM: fix compilation against current master 2021-05-17 15:36:52 +02:00
Julien Templier aaba66f5b4 ASYLUM: Sync with palette changes on trunk
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@773 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:52 +02:00
Filippos Karapetis 62098ed51e ASYLUM: Sync with the latest changes in trunk
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@771 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:52 +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 fe4560c6cd ASYLUM: Add Screen::drawLine debug function
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@715 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:44 +02:00
Julien Templier a3d50bb1cd ASYLUM: Add a Screen::draw() helper function to draw backgrounds
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@710 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:43 +02:00
Julien Templier bedc73b5f5 ASYLUM: Implement Encounter::drawScreen() minus palette changes
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@702 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:42 +02:00
Julien Templier abcb2858e5 ASYLUM: Correct initial value of flag in Screen class
This makes the main player visible on screen again :D

- Correct destination rect left value not being calculated properly
- Use whole flag value when testing for masked actors

git-svn-id: http://asylumengine.googlecode.com/svn/trunk@699 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:41 +02:00
Julien Templier ae4d75e6a0 ASYLUM: Convert Video to new event handling
- Change Text::LoadFont to return the previous font
- Fix AsylumEngine::processDelayedEvents not working properly for scenes
- Add two params to AsylumEvent (needed by video subtitle handling)

git-svn-id: http://asylumengine.googlecode.com/svn/trunk@681 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:39 +02:00
Julien Templier d45a2fd4a1 ASYLUM: Copy backbuffer to screen in Screen::clear()
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@676 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:38 +02:00
Julien Templier d1235f9a64 ASYLUM: Fix Screen::clear()
It was only clearing the current screen and not the backbuffer

git-svn-id: http://asylumengine.googlecode.com/svn/trunk@667 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:37 +02:00
Julien Templier 318aaf1997 ASYLUM: Add stub for screenshot function in Screen class
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@649 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:34 +02:00
Julien Templier e8933a7c0b ASYLUM: Fix scene palette not being set properly after fade
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@631 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:31 +02:00
Julien Templier 2540959025 ASYLUM: Finish implementing some Scene functions
- Implement Scene::drawChapter5()
- Add missing palette fade and waiting to Scene::playIntroSpeech()
- Add Scene::adjustCoordinates()

git-svn-id: http://asylumengine.googlecode.com/svn/trunk@629 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:31 +02:00
Julien Templier b0248c93fd ASYLUM: Remove obsolete methods from Scene class
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@620 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:30 +02:00
Julien Templier fde7a99ece ASYLUM: Properly clip coordinates and adjust drawing width/height
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@618 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:29 +02:00
Julien Templier e75170cc14 ASYLUM: Implement proper blitting methods in Screen class
- Convert Text class to use Screen draw methods
- Update screen queue to use draw methods instead of direct copy
- Properly read additional graphic resource data

git-svn-id: http://asylumengine.googlecode.com/svn/trunk@617 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:29 +02:00
Julien Templier 814ac99ac4 ASYLUM: Update scene event handling and preload
- Implement Scene init and activate events
- Add stubs for other events
- Update SceneTitle to use proper resource ids and draw methods
- Remove some unused variables from Scene class

git-svn-id: http://asylumengine.googlecode.com/svn/trunk@611 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:28 +02:00
Julien Templier e1d12045d0 ASYLUM: Refactor parts of Scene class
- Add stubs for event handlers
- Change WorldStats to take an engine pointer like all other classes
- Move copyToBackBufferClipped to screen class

git-svn-id: http://asylumengine.googlecode.com/svn/trunk@610 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:28 +02:00
Julien Templier 1286a8bdc4 ASYLUM: Add back Menu credits, new game, quit and return to game
- Fix text flickering
- Remove obsolete methods in Screen and Text classes

git-svn-id: http://asylumengine.googlecode.com/svn/trunk@603 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:27 +02:00
Julien Templier 8a6d76b65e ASYLUM: Overhaul event handling
- Cleanup game initialization
- Update event loop to use the defined handler
- Menu is now the default event handler
- Implement eye direction update using existing Actor helper method
- Add stubs for all menu update & click event handlers

git-svn-id: http://asylumengine.googlecode.com/svn/trunk@600 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:27 +02:00
Julien Templier f8b4d22f7b ASYLUM: Move coordinate adjustement to Screen::drawGraphicsInQueue
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@597 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:26 +02:00
Julien Templier fff878e1c0 ASYLUM: Cleanup some screen methods
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@594 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:26 +02:00
Julien Templier 98a98a8486 ASYLUM: Fix GCC compilation and warnings
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@593 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:26 +02:00
Julien Templier 4c07c73e00 ASYLUM: Add loading of transparency tables
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@590 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:25 +02:00
Julien Templier 2d04087fc2 ASYLUM: Add stubs for two more graphic queue methods
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@567 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:22 +02:00
Julien Templier 6a869e6171 ASYLUM: Rename Screen::clearScreen to Screen::clear
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@549 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 8528b9d964 ASYLUM: Cleanup Pass 2
- Add proper init code for WorldStats
- Add some missing deletes in destructors (in particular Scene)
- Add const modifiers & casts in several places
- Fix some off-by-one array accesses
- Add checks for NULL in several classes

git-svn-id: http://asylumengine.googlecode.com/svn/trunk@546 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:18 +02:00
Julien Templier 509a8dd028 ASYLUM: Implement Special::setPaletteGamma
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@535 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
2021-05-17 15:36:17 +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
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 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 f0c46d5e7c ASYLUM: Implement remaining opcodes
- Add relevant needed stubs in Actor/Sound/Scene/Screen/Engine classes
- Have Encounter & BlowUpPuzzle compile again

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