Commit Graph
39 Commits
Author SHA1 Message Date
Le Philousophe abb4c3cd6c LASTEXPRESS: Don't use unsafe strcat and strcpy 2022-10-23 22:46:19 +02:00
Eugene Sandulenko abea37c9bb ALL: Update ScummVM project license to GPLv3+ 2021-12-26 18:48:43 +01:00
Evgeny Grechnikov 54562554f9 LASTEXPRESS: better names in sound code
Refactoring, no changes in behaviour.
2018-10-18 00:38:01 +03:00
Evgeny Grechnikov 53cd6616c9 LASTEXPRESS: refactor sound flags
Merge SoundFlag and SoundStatus into a single enum;
SoundEntry::setupStatus just casts one to another.

Keep only definitions of bits in SoundFlag; drop compound flags
like kFlagSteam = kSoundTypeAmbient | kSoundFlagLooped | kVolume7,
use ORed simple flags in calls; change the signature
of SoundManager::playSoundWithSubtitles to use uint32
instead of SoundFlag to avoid excess casting.

Add meaningful names to flags; add some comments.

Get rid of endian-unsafe SoundStatusUnion.

Fixes an issue with big-endian hosts.
No changes in behaviour on little-endian hosts.
2018-10-14 20:08:32 +03:00
Martin Gerhardy be71f5b990 LASTEXPRESS: fixed warnings with gcc 8.2
engines/lastexpress/entities/alexei.cpp: In member function ‘void LastExpress::Alexei::standingAtWindow(const LastExpress::SavePoint&)’:
engines/lastexpress/entities/alexei.cpp:772:49: warning: suggest parentheses around ‘&&’ within ‘||’ [-Wparentheses]
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    C++      engines/lastexpress/entities/chapters.o
engines/lastexpress/entities/august.cpp: In member function ‘void LastExpress::August::function21(const LastExpress::SavePoint&)’:
engines/lastexpress/entities/august.cpp:672:4: warning: this statement may fall through [-Wimplicit-fallthrough=]
    switch(params->param5) {
    ^~~~~~
engines/lastexpress/entities/august.cpp:694:3: note: here
   case 9:
   ^~~~
2018-09-13 20:55:49 +01:00
Evgeny Grechnikov 6a1e5c1d93 LASTEXPRESS: more fixes in NPC logic 2018-09-02 21:07:00 +03:00
Evgeny Grechnikov f771fa40ad LASTEXPRESS: multiple fixes in NPC logic
Checked the logic against the original game
(to be precise, DOS English version from GOG, although I think
AI logic has no significant differences with other versions).
Fixed a *lot* of errors with varying visibility for the user.

Also, save+exit+load sometimes resulted in memory corruption like
((EntityParametersSSII*)(new EntityParametersIIII))->param8 = 0;
load operation did not restore the correct type of NPC logic context,
the default one was used (which also has the smallest sizeof).
Should be fixed now. Save+load is still unusable because it locks
everybody waiting for kActionEndSound (the sound state is not restored),
but, at least, it should not corrupt the memory. Hopefully.
2018-08-26 12:09:43 +02:00
Torbjörn Andersson 70a2ca8b7d JANITORIAL: Silence more GCC 7 warnings
All these fall through were marked as deliberate, so again I've only
changed the comment to silence GCC.
2017-08-06 13:30:51 +02:00
Littleboy 94861cd73c LASTEXPRESS: Check for resulting sequence size in August logic code. CID 1003264 2014-06-16 18:46:31 -04:00
Littleboy 5310d49e53 LASTEXPRESS: Rename Server* classes to Waiter* 2014-06-16 18:46:13 -04:00
Johannes Schickel 3d4f409572 LASTEXPRESS: Make GPL headers consistent in themselves. 2014-02-18 02:39:35 +01:00
Littleboy ddcef23943 LASTEXPRESS: Fix enum comparison 2013-12-10 01:54:59 -05:00
Littleboy 1314c5c128 LASTEXPRESS: Rename Object properties 2013-12-10 01:54:56 -05:00
Littleboy 5e9404ccdf LASTEXPRESS: Rename Alexei logic functions 2013-12-10 01:54:54 -05:00
Eugene Sandulenko 6ca845b9ea LASTEXPRESS: Fix nasty bug with multiline macro. CID 1003640 2013-04-28 23:59:21 +03:00
Littleboy 6ab3b903d4 LASTEXPRESS: Identify more Verges functions 2012-08-27 21:49:42 -04:00
Julien 938961e237 LASTEXPRESS: Remove TIME_CHECK_CALLBACK_1 macro 2012-07-27 00:15:03 -04:00
Julien 8545991739 LASTEXPRESS: Remove several TIME_CHECK* macros 2012-07-27 00:15:00 -04:00
Julien 82ad017a8e LASTEXPRESS: Replace UPDATE_PARAM_GOTO macro 2012-07-27 00:14:58 -04:00
Julien 8de4cb6547 LASTEXPRESS: Replace UPDATE_PARAM_PROC and UPDATE_PARAM_PROC_TIME macros 2012-07-27 00:14:58 -04:00
Julien 95503250f8 LASTEXPRESS: Replace UPDATE_PARAM macro 2012-07-27 00:14:56 -04:00
Littleboy d830c0edc9 LASTEXPRESS: Replace TIME_CHECK_SAVEPOINT and TIME_CHECK_OBJECT macros 2012-07-16 23:51:32 -04:00
Littleboy 4cee0836c9 LASTEXPRESS: Replace CALLBACK_ACTION macro by member function 2012-07-14 14:34:42 -04:00
Littleboy 732a2c80dd LASTEXPRESS: Remove duplicated include statements 2012-07-14 13:23:54 -04:00
Littleboy a21f72c87b LASTEXPRESS: Fix typos in entity code (as reported by _sev) 2011-11-07 20:25:14 -05:00
Littleboy 90dc4f9a8c LASTEXPRESS: Move Sound class to the sound folder 2011-06-28 22:30:24 -04:00
Littleboy 6eace0ca75 LASTEXPRESS: Move sound queue related functions to a separate class
- Implement missing queue reset function
 - Cleanup SoundManager::playLoopingSound()
2011-06-28 22:13:40 -04:00
Littleboy 5d020fffad LASTEXPRESS: Refactor Sound class
- Move entry-related functions to separate class
 - Move enumeration to shared header and rename FlagType to SoundFlag
2011-06-24 10:56:49 -04:00
strangerke 69b1485a22 GIT: Clean up: Suppress SVN tags, now useless 2011-05-12 01:16:22 +02:00
Julien Templier 82b0a9b003 LASTEXPRESS: Add macro for end of entities logic functions
svn-id: r55343
2011-01-20 04:57:06 +00:00
Max Horn e27b05ef35 COMMON: Rename String::printf() to String::format()
This is a first step towards getting rid of all uses of regular printf,
fprintf, vprintf, vfprintf, puts, fputs, etc. in our codebase.

The name format() reflects the purpose of the function, and parallels
String.format() in Java, boost::format, and others.

svn-id: r54004
2010-11-01 16:02:28 +00:00
Julien Templier dba75791d9 LASTEXPRESS: Add some missing casts and const qualifiers
svn-id: r53880
2010-10-27 19:19:22 +00:00
Julien Templier a54783c414 LASTEXPRESS: Merge several TIME_CHECK* macros together
svn-id: r53692
2010-10-21 23:46:00 +00:00
Julien Templier 002557fbd2 LASTEXPRESS: Rename CURRENT_PARAMS to CURRENT_PARAM
svn-id: r53691
2010-10-21 23:44:59 +00:00
Julien Templier af36047c71 LASTEXPRESS: Rename LOBYTE macro
svn-id: r53689
2010-10-21 23:43:57 +00:00
Julien Templier 08f905fe56 LASTEXPRESS: Implement remaining AI logic functions for August
svn-id: r53683
2010-10-21 23:40:47 +00:00
Julien Templier a621302a71 LASTEXPRESS: Implement 10 more AI logic functions
svn-id: r53680
2010-10-21 23:38:35 +00:00
Julien Templier 6a67bfd85d LASTEXPRESS: Implement 3 more AI logic functions
svn-id: r53587
2010-10-18 20:39:54 +00:00
Eugene Sandulenko 86d650926f LASTEXPRESS: Merge in the engine.
svn-id: r53579
2010-10-18 19:17:38 +00:00