Le Philousophe
1d6b27d64b
DIRECTOR: Avoid duplicated data when not necessary
2021-06-13 14:17:06 +02:00
Cameron Cawley
5e304c9274
DIRECTOR: Fix compilation on platforms with dynamic detection
2021-06-13 14:17:06 +02:00
ysj1173886760
37a181f3db
DIRECTOR: fix indent problem, and for custom target file name, we won't save it since we didn't use it.
2021-06-13 14:15:45 +02:00
ysj1173886760
073db5b715
DIRECTOR: resolve conflicts and remove warnings
2021-06-13 14:15:45 +02:00
ysj1173886760
6e3551049c
DIRECTOR: pass extra info in fallback detection
2021-06-13 14:15:45 +02:00
ysj1173886760
7af3a3f84c
ENGINES: introduce ADDectedGameExtraInfo to ADGameDetector, add extra info as parameter for fallback detect.
2021-06-13 14:15:45 +02:00
ysj1173886760
5ff5787cbf
DIRECTOR: fix incorrect code of detection in director
2021-06-13 14:15:45 +02:00
ysj1173886760
ada288626d
DIRECTOR: change customTargetList to hashmap
2021-06-13 14:15:45 +02:00
ysj1173886760
e1d047ca88
DIRECTOR: add comments for detect custom targets in director
2021-06-13 14:15:45 +02:00
ysj1173886760
55d1fd2042
DIRECTOR: add custom targets detect to director
2021-06-13 14:15:45 +02:00
ysj1173886760
9ef28b2acb
DIRECTOR: remove 2 offsets when we are creating cast members to avoid keep replacing widget
2021-06-13 00:41:26 +02:00
ysj1173886760
3693c938e1
DIRECTOR: initialize _selEnd and _selStart when we creating text cast members
2021-06-13 00:41:26 +02:00
ysj1173886760
9f01b08a1b
DIRECTOR: wrap up calculating pure text dims of mactext to getTextOnlyDimensions
2021-06-13 00:41:26 +02:00
ysj1173886760
b0c3ee3e25
DIRECTOR: use _initialRect to create text cast member
2021-06-13 00:41:26 +02:00
ysj1173886760
9f4be107a3
DIRECTOR: subtract offsets when we creating text cast member
2021-06-13 00:41:26 +02:00
djsrv
dc95314c1a
DIRECTOR: LINGO: Add delete tests
2021-06-10 11:52:52 -04:00
djsrv
a2d35bbdf3
DIRECTOR: LINGO: Temporarily disable evaluation in c_eval
2021-06-10 11:52:36 -04:00
djsrv
e3f75a9bc4
DIRECTOR: LINGO: Implement b_delete/cb_delete
2021-06-10 11:51:50 -04:00
djsrv
b5767a793c
DIRECTOR: LINGO: Ignore non-existent chunks in b_hilite
2021-06-10 10:58:27 -04:00
djsrv
5e1a0d5ddc
DIRECTOR: LINGO: Use Common::isSpace to detect word boundaries
2021-06-10 10:58:27 -04:00
djsrv
85a2bf6d7d
DIRECTOR: LINGO: Implement b_hilite/c_hilite
2021-06-10 10:58:27 -04:00
djsrv
eee17da97a
DIRECTOR: Add Score::getSpriteIdByMemberId
2021-06-10 10:57:19 -04:00
ysj1173886760
3332517243
DIRECTOR: move selStart and selEnd from Lingo to Movie
2021-06-10 13:58:41 +02:00
ysj1173886760
3c7844e5a2
GRAPHICS: MACGUI: fix the behaviour when we set the editable text member active
2021-06-10 13:58:41 +02:00
ysj1173886760
0f7e7bd462
GRAPHICS: MACGUI: disable the ability of setting active in setEditable. currently, director will only set the first editable text widget to active
2021-06-10 13:58:41 +02:00
ysj1173886760
dea9455a96
GRAPHICS: MACGUI: introduce two variable to lingo, _selEnd and _selStart, which has default value -1. selEnd and selStart specify the selection area every time you activated the mactext
2021-06-10 13:58:41 +02:00
Eugene Sandulenko
17b125b479
JANITORIAL: Fix indentation
2021-06-09 21:51:08 +02:00
trembyle
5094f0734d
DIRECTOR: Fix directory globs
...
Correct the list to match their actual depth in directory structure
2021-06-09 21:49:28 +02:00
trembyle
dca227aa7e
DIRECTOR: Add more detection entries
...
And fix one typo under Explorapedia
2021-06-09 21:49:28 +02:00
trembyle
bb84be66c9
DIRECTOR: Expose subdirectory list from detection
...
Clean up `director.cpp` by iterating over an exposed subdirectory
list from `detection.cpp`, rather than maintain similar data in two
places.
2021-06-09 21:49:28 +02:00
trembyle
9f3e3bc734
DIRECTOR: Add subdirectory matching
...
Add subdirectories to match in both detection and runtime
2021-06-09 21:49:28 +02:00
trembyle
fe2060309f
DIRECTOR: Add detection entries
...
Huge increase in the number of detection entries. This adds
thousands of lines to the detection tables. Unfortunately due to
the new grouping and organization, this cannot easily be broken up
into atomic commits. Future updates will smaller and easier to see
individual changes.
2021-06-09 21:49:28 +02:00
trembyle
435b4d65f9
DIRECTOR: Add new detection macros
...
To reduce line count and enhance readability of detection tables,
add new macros for multiple file detection. Also allow additional
platforms for FM Towns and Pippin.
2021-06-09 21:49:28 +02:00
trembyle
7ba650d5bd
DIRECTOR: Move game descriptions to detection_tables.h
...
The list will soon be getting very long and would require much
scrolling to view code in detection.cpp if not moved.
2021-06-09 21:49:28 +02:00
djsrv
12565cb272
DIRECTOR: LINGO: Fix the number of chunks
...
Deleted these lines by accident...
2021-06-08 22:19:38 -04:00
djsrv
35e68aece3
DIRECTOR: LINGO: Fix chunk refs with start < 1
2021-06-08 21:20:19 -04:00
djsrv
b073fe1fea
DIRECTOR: LINGO: Fix char bound check
2021-06-08 21:00:12 -04:00
djsrv
f747445e15
DIRECTOR: LINGO: Implement kTEAString properties
2021-06-08 20:06:29 -04:00
djsrv
ce30bcb0d7
DIRECTOR: LINGO: Use chunk refs in b_numberof/lastof
...
For consistency.
2021-06-08 20:06:29 -04:00
djsrv
e50ea9b06e
DIRECTOR: LINGO: Rework chunk references
2021-06-08 20:06:28 -04:00
djsrv
5378369652
DIRECTOR: Add consts
2021-06-08 20:06:28 -04:00
djsrv
9c6165554f
DIRECTOR: LINGO: Add LC::readChunkRef
2021-06-08 20:06:28 -04:00
djsrv
1043519df5
DIRECTOR: Avoid drawing previous frame
...
The previous frame was getting drawn if video was playing. Only render
if we need to keep waiting before switching the frame.
2021-06-07 18:31:55 -04:00
djsrv
ff7943d576
DIRECTOR: Make loadArchive return false if no VWCF
2021-06-07 15:06:00 -04:00
djsrv
ed8ca876e3
DIRECTOR: Use version from VWCF for loading
2021-06-07 14:48:48 -04:00
djsrv
d91e3d5148
DIRECTOR: Move humanVersion to util.cpp
2021-06-07 14:48:48 -04:00
djsrv
d6b6cc6f18
DIRECTOR: Create FileVersion enum
2021-06-07 14:48:48 -04:00
djsrv
98656b492e
DIRECTOR: Remove version check for autohilite flag
...
Even though this flag was added in D3, we cannot tell the difference
between D2 movies and early D3 movies. It should always be false in D2
movies anyway.
2021-06-07 10:35:51 -04:00
djsrv
fbbe79e048
DIRECTOR: Don't hilite moveable sprites in D4
2021-06-07 10:34:13 -04:00
Roland van Laar
a7f16ffbe1
DIRECTOR: allow setting of video casts to castNum
...
The game Majestic dynamically sets the castNum to video casts and expects them to play directly.
Videos were also stopped erroneously. Video stoppage is assumed when
movieRate is 0. The comment als indicated that it was probably broken
for D4.
The corresponding lingo code is, where anim is a cast label.
set the castNum of sprite 48 to cast(anim)
updateStage()
set the movieRate of sprite 48 to 1
repeat while the movieRate of sprite 48
updateStage()
end repeat
2021-06-06 18:15:18 +02:00
djsrv
1b3501af94
DIRECTOR: Autohilite matte sprites in D3
2021-06-04 19:17:59 -04:00
djsrv
06f74a2416
DIRECTOR: Set initial values for CastMemberInfo fields
2021-06-04 19:17:59 -04:00
djsrv
b6d111a678
DIRECTOR: Lower VM version if it is wrong
2021-06-04 17:51:25 -04:00
djsrv
a58cb03c1c
DIRECTOR: Improve autohilite behavior
...
In D3 or higher, there's an autohilite flag in the cast info.
In D2, sprites seem to autohilite only if they have matte ink.
2021-06-04 17:51:25 -04:00
djsrv
9cf248bdec
DIRECTOR: Check for cast script in isActive
...
Either a score script or a cast script can make a sprite respond to
clicks.
2021-06-04 17:51:25 -04:00
djsrv
9db8f29708
DIRECTOR: Add CastMember::getInfo()
2021-06-04 17:51:25 -04:00
djsrv
ba9f696482
DIRECTOR: Fix APPL archives
...
_rifxType was getting changed before it reached the APPL conditional
before. This fixes that. I also moved APPL handling out of readMemoryMap
since it was sort of out of place there.
2021-06-04 16:47:19 -04:00
djsrv
486513c715
DIRECTOR: Skip normal loading for APPL archives again
2021-06-04 09:50:02 -04:00
Roland van Laar
0f1e9f19c3
Revert "DIRECTOR: Continue playing videos even if they are audio-only"
...
This codechange resulted in a video playing too fast and getting
out of sync with the audio.
The audio playback speed was normal.
This reverts commit 3d8523a86e
.
2021-06-04 13:02:42 +02:00
djsrv
33060e14d8
DIRECTOR: Fix offsets in dumped movies
2021-06-03 15:54:53 -04:00
Scott Percival
84d2f0db8f
DIRECTOR: Add sanity checks for starting/stopping video
2021-06-01 22:04:45 +08:00
Scott Percival
3d8523a86e
DIRECTOR: Continue playing videos even if they are audio-only
2021-05-30 19:29:16 +08:00
Scott Percival
8836857b1b
DIRECTOR: Stop playing videos after the sprite changes
2021-05-30 19:29:16 +08:00
Eugene Sandulenko
3f3a0a6886
DIRECTOR: Improved support for Mac sounds
2021-05-25 00:20:01 +02:00
ysj1173886760
e2f639111a
DIRECTOR: change to a better solution when fixing the cursor
2021-05-24 22:54:24 +02:00
ysj1173886760
f5c4a1137f
DIRECTOR: fix the cursor which was not blinking in warlock
2021-05-24 22:54:24 +02:00
ysj1173886760
7dfb002026
DIRECTOR: use tokenizer to replace the split
2021-05-24 22:52:01 +02:00
ysj1173886760
fdc5e88e30
DIRECTOR: modify the logic of lingo-builtin function NthFileName
2021-05-24 22:52:01 +02:00
Scott Percival
f3b166befc
DIRECTOR: Adjust lingoexec debugging levels
...
--debuglevel=2 will show the call stack after each function call
--debuglevel=3 will show the current instruction
--debuglevel=5 will show the stack after each instruction
--debuglevel=9 will show the variables after each instruction
2021-05-24 09:08:45 +08:00
Scott Percival
ee0b6affc3
DIRECTOR: Limit SoundCastMember looping flag to v4 and up
2021-05-24 09:08:45 +08:00
Eugene Sandulenko
b19f0173c9
DIRECTOR: Added detection for Macintosh II version of L-ZONE
2021-05-23 19:57:18 +02:00
ysj1173886760
d7dfc15229
DIRECTOR: fix code style problem
2021-05-22 01:34:57 +02:00
ysj1173886760
d0ea1c5953
DIRECTOR: move debug channels to metaEngineDetection
2021-05-22 01:34:57 +02:00
djsrv
be813e2ccc
DIRECTOR: Calculate DCR chunk offsets from start of ILS
...
Previously chunk offsets were calculated from the end of ABMP instead of
the beginning of the ILS body like they should be. I had to manually
shift the offsets by 5 bytes, which might not always be the right amount
due to the use of varints. This should always be correct.
2021-05-20 18:48:21 -04:00
Orgad Shaneh
a05e54f00c
JANITORIAL: Remove trailing whitespaces
2021-05-04 11:46:30 +03:00
Scott Percival
16eb05cee8
DIRECTOR: LINGO: Allow b_puppetSound to support 2 args
2021-04-25 23:22:51 +08:00
Scott Percival
7197d470d3
Revert "DIRECTOR: Add puppet check on kTheCastNum"
...
This reverts commit d650738f9f
.
This change caused several scenes to render incorrectly (e.g. the
witches cauldron on the Chop Suey map screen).
2021-04-25 23:22:51 +08:00
Scott Percival
ca0c5c800d
DIRECTOR: Fix memory leaks in SoundCastMember
2021-04-25 23:22:51 +08:00
Scott Percival
b09b54fa1b
DIRECTOR: Fix memory leak in _castsInfo
2021-04-25 23:22:51 +08:00
Scott Percival
e7375f7495
DIRECTOR: Update Chop Suey engine version in detection tables
2021-04-25 23:22:51 +08:00
Scott Percival
73d9aa2a83
DIRECTOR: Add P.A.W.S. to detection tables
2021-04-25 23:22:51 +08:00
Scott Percival
83c400600d
DIRECTOR: Fix the SoundCastMember looping flag
2021-04-25 23:22:51 +08:00
Scott Percival
527a093228
DIRECTOR: Fix the _videoPlayback flag
...
The _videoPlayback flag needs to be enabled as soon as a video starts
playing, instead of the frame after.
Fixes the morphing cloud animations in Chop Suey.
2021-04-25 23:22:51 +08:00
Scott Percival
89bfa05874
DIRECTOR: Fix video playback in 256-colour mode
2021-04-25 23:22:51 +08:00
Scott Percival
b4df4f4036
DIRECTOR: LINGO: Fix memory leak in Datum
2021-04-25 23:22:51 +08:00
Scott Percival
028fb93cf8
DIRECTOR: Fix memory leaks in DirectorSound
2021-04-25 23:22:51 +08:00
Eugene Sandulenko
5e7fe2dc57
JANITORIAL: Replace spaces in indentation with tabs
2021-04-15 21:20:36 +02:00
D G Turner
f002a0fc23
DIRECTOR: Fix GCC Shadowing Warnings
2021-03-28 02:33:53 +01:00
Eugene Sandulenko
7725f0ceed
COMMON: Make WinResource::getVersionInfo more universal
2021-03-22 00:07:44 +01:00
Yegor Timoshenko
fbd7619ad6
DIRECTOR: implement colorQD builtin
...
Normally, colorQD is a TheEntity. However, "Eastern Mind: The Lost Souls
of Tong-Nou" instead uses it as a builtin with no arguments, both in Mac
and Windows versions of the game.
2021-03-03 16:27:03 +01:00
Lenny
a7776e9ef2
DIRECTOR: implement maxInteger function
2021-02-04 01:56:53 +01:00
Lenny
53fb65932c
DIRECTOR: add The Simpsons Cartoon Studio WIN to detection
2021-02-04 01:56:53 +01:00
trembyle
5e7cca0cd5
DIRECTOR: Add detection for original Chinese Karma
...
First released in Taiwan by InterServ prior to English release.
2020-12-08 00:29:58 +01:00
Cameron Cawley
4ced49acd4
ENGINES: Changed AdvancedMetaEngine::createInstance to return a Common::Error
2020-12-04 20:57:14 +00:00
trembyle
22ea6375ed
DIRECTOR: Add detection for Byron Preiss Multimedia products
2020-12-01 21:02:34 +01:00
Eugene Sandulenko
0e2cc2f661
DIRECTOR: Use AD_ENTRY2s in the detection table
2020-11-28 14:03:06 +01:00
Eugene Sandulenko
a151f5b19d
DIRECTOR: Removing jewels two-minute download. We do not have a copy
2020-11-27 00:17:05 +01:00
Torbjörn Andersson
ba37c52047
JANITORIAL: Remove some unnecessary semicolons
2020-11-17 07:22:49 +01:00
Eugene Sandulenko
7ff34bc9ec
PLUGINS: MetaEngineStatic -> MetaEngineDetection
2020-10-11 23:14:39 +02:00
Eugene Sandulenko
7ea6781043
PLUGINS: PLUGIN_TYPE_METAENGINE -> PLUGIN_TYPE_ENGINE_DETECTION
2020-10-11 23:12:32 +02:00
Eugene Sandulenko
03d0a7b891
DIRECTOR: Added comments
2020-10-04 22:09:11 +02:00
Eugene Sandulenko
1395a8b4e5
DIRECTOR: Process '@' in file path conversion
2020-10-04 21:56:30 +02:00
aryanrawlani28
d26bbe521c
ENGINES: ALL: Finish renaming ME & AME classes
...
- ME -> MetaEngineStatic (static parts)
- MEC -> MetaEngine (dynamic parts)
2020-10-03 14:56:36 +02:00
aryanrawlani28
a56dc094b9
ENGINES: ALL: Move detection_enums -> detection.h
...
- Cleans up headers quite a bit.
2020-10-03 14:56:36 +02:00
aryanrawlani28
4f55c1b689
DIRECTOR & KYRA: MODULES: Use workarounds to skip warnings.
...
- When these files are included for the second time, a warning is shown that the previous recipes will be overriden.
- Use_Rules helps with a workaround to disable these warnings.
2020-10-03 14:56:36 +02:00
aryanrawlani28
29ceb07959
ENGINES: ALL: Revert detection submodule to be directly present in the engine directory
...
- DETECT_OBJS are present and added inside an engine's modules.mk file.
2020-10-03 14:56:36 +02:00
aryanrawlani28
f3b9477893
ENGINES: ALL: Add header guards for the new detection-header files.
2020-10-03 14:56:36 +02:00
aryanrawlani28
8189a05316
ENGINES: ALL: Adapt to changes for new plugins by defining a new detection module
...
For each engine:
- Make a new folder detection
- Move detection-related files inside the folder
- Add a new module "enginename/detection"
- Add DETECT_OBJS here
- Adjust the normal engine module to remove detect_objs
- Adjust every file for the new changes.
2020-10-03 14:56:36 +02:00
aryanrawlani28
7944a7b039
DIRECTOR: Split detection features & adapt to new plugins.
2020-10-03 14:56:36 +02:00
Bastien Bouclet
0f2c6cd9ea
ENGINES: Change mac resource fork file detection to use the file cache
...
Common::MacResMan is now able to open files from a specified
Common::Archive. This is a bit hacky as dynamic_cast is used to break
the Archive encapsulation to retreive the underlying FSNode. It should
however be more correct than the previous code that assumed files were
at the root of the currently running game's path.
AdvancedDetector constructs a Common::Archive from its FileMap based
filesystem cache and uses it to detect the mac resource fork files.
This cuts the time it takes to run the detection code with all the
engines enabled as dynamic plugins on the 3DS to 30 s from 280 s.
2020-09-20 16:33:45 +02:00
Cameron Cawley
51789f8fea
DIRECTOR: Show the unknown game dialog for fallback detection entries
2020-09-19 23:21:44 +02:00
Eugene Sandulenko
53c485d85b
DIRECTOR: Add catchers for unprocessed chunks
2020-08-27 18:00:44 +02:00
Eugene Sandulenko
ab9be9aba3
DIRECTOR: LINGO: Remove obsolete and now unneeded file
2020-08-26 01:32:55 +02:00
Eugene Sandulenko
92bd514902
DIRECTOR: LINGO: Make sure video is rendered on 'updateStage'
2020-08-25 10:43:47 +02:00
djsrv
d7ea3450e3
DIRECTOR: LINGO: Fix birth version number
2020-08-24 21:52:58 -04:00
Eugene Sandulenko
233e0e21a8
DIRECTOR: Draw video only when it is truly changed
2020-08-24 20:53:37 +02:00
Eugene Sandulenko
e8d9dfe62b
DIRECTOR: Proper implementation of 'directToStage'
2020-08-23 20:31:48 +02:00
Eugene Sandulenko
806c946fd6
DIRECTOR: Attempt to implement 'directToStage'
...
Not working, as it is not clear how to change priority of a channel
2020-08-23 19:46:58 +02:00
Eugene Sandulenko
564b5f104e
DIRECTOR: LINGO: Play video when 'updateScreen' is called
2020-08-23 19:46:58 +02:00
Roland van Laar
ab9fe9706a
DIRECTOR: LINGO: spelling fix for fallthrough
...
Make implicit fallthrough explicit
2020-08-23 10:08:55 +02:00
Eugene Sandulenko
b438f6fb07
DIRECTOR: Fix warnings
2020-08-23 01:23:28 +02:00
Eugene Sandulenko
9a9c32f663
DIRECTOR: LINGO: Fix warnings
2020-08-23 01:16:57 +02:00
Eugene Sandulenko
cfa0be7e35
DIRECTOR: Fix signed/unsigned comparison
2020-08-23 01:15:17 +02:00
Eugene Sandulenko
6c69c02442
DIRECTOR: LINGO: Reword b_play(), so it is simpler and works with "play done"
...
"play done" bytecode generates "play" without arguments
2020-08-22 19:06:35 +02:00
Eugene Sandulenko
f6f669c953
DIRECTOR: Setting loop for stopped DV should actually play it
2020-08-22 18:02:10 +02:00
Eugene Sandulenko
d1b0c5a986
DIRECTOR: Render last frame from paused or stopped videos
2020-08-22 18:02:10 +02:00
Eugene Sandulenko
f3f0816bd3
DIRECTOR: Fixed showing initial frame on stopped videos
2020-08-22 18:02:10 +02:00
Eugene Sandulenko
cc2e31a2b3
DIRECTOR: Simplify expression
2020-08-22 10:38:06 +02:00
djsrv
d50b9a8a37
DIRECTOR: LINGO: Add chunk tests
2020-08-21 21:52:54 -04:00
djsrv
5201974ec7
DIRECTOR: LINGO: Comment out bad chunk tests
2020-08-21 21:52:54 -04:00
djsrv
c147a5c979
DIRECTOR: LINGO: Implement chunk refs
2020-08-21 21:52:54 -04:00
djsrv
3bf6f79a3e
DIRECTOR: Fix crash on mouse move in lingotests
2020-08-21 21:52:54 -04:00
djsrv
4c7593659b
DIRECTOR: LINGO: Fix 0 indices in c_charToOf
2020-08-21 21:52:54 -04:00
Nathanael Gentry
828595c9fc
DIRECTOR: Don't override shape dimensions
2020-08-21 16:52:07 -04:00
Nathanael Gentry
0bab9810c0
DIRECTOR: Fix getWidgetRect code path
...
This is morally equivalent to getWidgetRect, but takes into account the changes
to dimensions that MacText makes for borders and gutters and a text shadow.
Thus, these features are working again.
2020-08-21 16:34:06 -04:00
Nathanael Gentry
d650738f9f
DIRECTOR: Add puppet check on kTheCastNum
2020-08-21 14:35:12 -04:00
Nathanael Gentry
5c7b8fce47
DIRECTOR: LINGO: Add GetVolume XFCN as builtin
2020-08-21 14:35:12 -04:00
djsrv
a6fc2ee3dc
DIRECTOR: JANITORIAL: Add explicit int->bool casts
...
for sprite properties.
2020-08-21 12:58:52 -04:00
djsrv
c883a98b72
DIRECTOR: JANITORIAL: Make int->bool cast explicit
2020-08-21 12:38:42 -04:00
djsrv
8313c2cf6a
DIRECTOR: LINGO: Fix unsafe int/bool comparison
2020-08-21 12:38:42 -04:00
Eugene Sandulenko
45c49b1195
DIRECTOR: Load DVs only on demand
2020-08-21 10:52:08 +02:00
Eugene Sandulenko
6372c5d845
DIRECTOR: Implemented DV looping
2020-08-21 09:37:33 +02:00
djsrv
ccfd1c8fd4
DIRECTOR: LINGO: Fix installMenu in D4 movies
2020-08-21 01:02:53 -04:00
djsrv
f2291b2c53
DIRECTOR: LINGO: Handle installMenu 0
2020-08-21 01:02:53 -04:00
djsrv
1e476e1446
DIRECTOR: LINGO: Assert cast member error in tests
2020-08-21 00:20:26 -04:00
djsrv
74bb24c2e5
DIRECTOR: LINGO: Error on missing cast member
2020-08-21 00:20:26 -04:00
djsrv
20e54db2ae
DIRECTOR: LINGO: Implement errors
2020-08-21 00:20:22 -04:00
djsrv
07034e3b71
DIRECTOR: LINGO: Remove factoryCall declaration
...
Was unused.
2020-08-21 00:14:06 -04:00
djsrv
34393fde5e
DIRECTOR: LINGO: Remove c_lazyeval
2020-08-20 23:41:51 -04:00
djsrv
f49480425d
DIRECTOR: LINGO: Adjust c_eval to var changes
2020-08-20 23:41:28 -04:00
Eugene Sandulenko
e27d5ac7fc
DIRECTOR: JANITORIAL: Code formatting and unified the namespace end comments
2020-08-21 00:36:19 +02:00
Eugene Sandulenko
5d41772b5e
DIRECTOR: Added more comments
2020-08-21 00:36:19 +02:00
Eugene Sandulenko
54c06e8da0
DIRECTOR: JANITORIAL: Sort debug flags
2020-08-21 00:36:19 +02:00
Eugene Sandulenko
b2030d9e1c
DIRECTOR: Code reshuffling for readability
2020-08-21 00:21:32 +02:00
Eugene Sandulenko
afc972f584
DIRECTOR: Split out static data from graphics.cpp
...
Actually, we'd better move it to director.dat file
2020-08-21 00:18:30 +02:00
trembyle
6b15081607
DIRECTOR: Add detection for more games
...
Fix minor version numbers for new entries. Existing entries will need
to be revised to include minor version numbers.
2020-08-20 23:53:13 +02:00
Eugene Sandulenko
3afe32c66c
DIRECTOR: LINGO: Implement 'the duration of cast'
2020-08-20 23:50:34 +02:00
Eugene Sandulenko
fbbea1a01f
DIRECTOR: Implement DV::setMovieRate()
2020-08-20 23:50:34 +02:00
Eugene Sandulenko
586790d987
DIRECTOR: Start Digital Videos when they appear on a channel
2020-08-20 23:50:34 +02:00
djsrv
a5948cfc37
DIRECTOR: LINGO: Evaluate field ref on pop
...
This simplifies handling of fields, since most of the time it should be
treated as a string. Where we actually need a raw reference, pop(false)
is used.
2020-08-20 15:53:31 -04:00
djsrv
60fe2ea32e
DIRECTOR: LINGO: Eliminate lazy vars
...
Now normal var refs are evaluated on pop. To get the reference itself,
use pop(false)
2020-08-20 15:34:13 -04:00
Nathanael Gentry
6011d53e78
DIRECTOR: Fix typo
2020-08-20 11:07:28 -04:00
Roland van Laar
5043af356e
DIRECTOR: LINGO: implement setAt beyond array size
...
setAt(lst, 10, 1) will set the 10th element (1 indexed) to 1.
When the array size is smaller than 10, setAt will pad the list will
pad the lst with zeros and add the 1 at the end.
2020-08-20 12:28:49 +02:00
djsrv
8078b28e10
DIRECTOR: LINGO: Rewrite b_version
...
It should support any version now.
2020-08-19 19:27:23 -04:00
djsrv
6db398a74d
DIRECTOR: LINGO: Use findVarV4 in cb_v4assign
2020-08-19 18:55:34 -04:00
djsrv
6fe741d2af
DIRECTOR: LINGO: Implement findVarV4
2020-08-19 18:55:34 -04:00
Eugene Sandulenko
6889c7e720
DIRECTOR: Do not render stopped videos
2020-08-20 00:53:23 +02:00
Nathanael Gentry
faa88c8f51
DIRECTOR: Preserve text formatting on setText
2020-08-19 16:32:45 -04:00
Nathanael Gentry
73c970421f
DIRECTOR: Re-render changed cursors on new frame
2020-08-19 16:31:36 -04:00
djsrv
df7cc8e2c2
DIRECTOR: LINGO: Mark objectcall warnings BUILDBOT
2020-08-19 15:09:45 -04:00
djsrv
febf4592ba
DIRECTOR: LINGO: Handle varType in cb_objectcall
2020-08-19 15:06:27 -04:00
djsrv
b95495725a
DIRECTOR: LINGO: Remove unnecessary non-eval pop
...
cb_varrefpush no longer pushes a lazy var, so suppressing its evaluation
is no longer necessary.
2020-08-19 14:42:49 -04:00
djsrv
205a90122a
DIRECTOR: LINGO: Warn on missing factory method
2020-08-19 14:31:48 -04:00
Nathanael Gentry
d7ec21cbeb
DIRECTOR: Properly discover sprite cursors
...
We canot just use getSpriteIDFromPos, as Director gets the cursor from the
topmost sprite that has a non-empty cursor.
2020-08-19 10:41:55 -04:00
Nathanael Gentry
c99abbc645
DIRECTOR: Load resource files from relative paths
2020-08-19 10:41:55 -04:00
Nathanael Gentry
5583009442
DIRECTOR: Add default cursor arrow case
2020-08-19 10:41:55 -04:00
Nathanael Gentry
7d68cd7771
Revert "DIRECTOR: Do not attempt to render cursor from empty sprite"
...
This reverts commit 12a35cda57
.
2020-08-19 10:41:55 -04:00
Nathanael Gentry
bd2c3f2bba
DIRECTOR: Show ink type as decimal
2020-08-19 10:41:54 -04:00
Eugene Sandulenko
cc14dede0f
DIRECTOR: More debug output to DV
2020-08-19 14:54:30 +02:00
Eugene Sandulenko
a6a809f1c3
DIRECTOR: Moved DV loading to castmember.cpp
2020-08-19 13:45:15 +02:00
Eugene Sandulenko
02cbcfcd21
DIRECTOR: LINGO: Fix crash in b_alert
2020-08-19 12:42:24 +02:00
Henrik "Henke37" Andersson
b2b4441cee
DIRECTOR: Copy constructor for DirectorPlotData
...
It's another double free causer.
2020-08-19 12:31:34 +02:00
Henrik "Henke37" Andersson
184d54708d
DIRECTOR: Assignment operator for InfoEntry struct
2020-08-19 12:31:34 +02:00
Henrik "Henke37" Andersson
3460ee1132
DIRECTOR: InfoEntry struct needs a copy constructor to avoid a double free
2020-08-19 12:31:34 +02:00
Eugene Sandulenko
7053648484
DIRECTOR: Properly set movieRate when DV ends
2020-08-18 23:39:05 +02:00
djsrv
0345a04e7a
DIRECTOR: LINGO: cb_objectpush -> cb_varrefpush
...
The opcode isn't used just for objects.
2020-08-18 16:34:40 -04:00
djsrv
b67df72543
DIRECTOR: LINGO: Push regular var in cb_objectpush
2020-08-18 16:12:29 -04:00
djsrv
191ab2da4e
DIRECTOR: LINGO: Fix cb_objectcall lazy vars
...
Only the first arg is treated as a lazy var.
2020-08-18 15:53:45 -04:00
djsrv
cd91e0fc2a
DIRECTOR: LINGO: Push lazy var in cb_objectpush
2020-08-18 15:31:53 -04:00
djsrv
b19569eb39
DIRECTOR: LINGO: Add eval arg to Lingo::pop/peek
2020-08-18 15:27:59 -04:00
djsrv
d180343a16
DIRECTOR: LINGO: Fix varAssign/Fetch type checks
2020-08-18 15:27:59 -04:00
djsrv
799ac26520
DIRECTOR: LINGO: Fix missing method fallback
2020-08-18 15:27:59 -04:00
Roland van Laar
f071de48a3
DIRECTOR: LINGO: implement put ... after chunkexpr
...
The D4 lingo `put ... after chunkexpr` uses opcode 34 (0x22) for
cb_v4assign.
We convert the SYMBOL to a VAR due to cb_objectpush pushing
variables as SYMBOLS to the stack.
2020-08-18 16:10:02 +02:00
Roland van Laar
7d21a49077
DIRECTOR: LINGO: FIX Datum to castId conversion
...
castId is a CASTREF, which is only converted into an int
by asCastId, not asInt.
2020-08-18 14:44:16 +02:00
Eugene Sandulenko
5ec3815106
DIRECTOR: Update digital video independently from the frame tempo
2020-08-18 13:08:52 +02:00
Eugene Sandulenko
6afb2159c6
DIRECTOR: Remove obsolete video.*
2020-08-18 13:08:52 +02:00
djsrv
24042ab1e6
DIRECTOR: LINGO: Fix compiled go loop
2020-08-17 21:19:55 -04:00
djsrv
7feaa01003
DIRECTOR: LINGO: Reuse LC::call in cb_objectcall
2020-08-17 21:19:55 -04:00
djsrv
518c90ec8f
DIRECTOR: LINGO: Pass me as arg to factory methods
2020-08-17 21:19:55 -04:00
djsrv
ab0d0b5ac8
DIRECTOR: LINGO: Handle null in Datum constructor
2020-08-17 21:19:55 -04:00