Commit graph

208 commits

Author SHA1 Message Date
hendricks266
9268b9f0b6 Make a bunch of things extern "C". This should fix C++ builds on OS X and with Lunatic. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@4766 1a8010ca-5511-0410-912e-c29ae57300e0
2014-11-26 04:39:23 +00:00
terminx
99e21ffa94 Part 1 of attempting to adhere to C standard section 7.1.3. It turns out it's illegal to use identifiers that begin with _ or have __ anywhere in them. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@4747 1a8010ca-5511-0410-912e-c29ae57300e0
2014-11-22 12:32:56 +00:00
terminx
bf3c0de73a Mainly misc cleanups (and a fix for the C++ build), but there are a few important changes in here.
VM_OnEvent() has become VM_OnEvent(), VM_OnEventWithReturn(), VM_OnEventWithDist(), and VM_OnEventWithBoth() (the latter of which is only ever used once...). Of course, this required every call to VM_OnEvent() be changed.

memberlabel_t and vmstate_t have been changed to use the regular "int" type versus explicitly specifying int32_t as they did previously. The rationale for this change is simply that it looks cleaner, and I think we should move toward just using "int" in most cases where there's no particular reason to specify an explicit data type.

Also changes CON_KILLIT to just "return" instead of "continue". DONT_BUILD.

git-svn-id: https://svn.eduke32.com/eduke32@4745 1a8010ca-5511-0410-912e-c29ae57300e0
2014-11-22 12:29:25 +00:00
hendricks266
c1c01f0e0b Replace the funkily-formatted GNU.TXT with the FSF's official gpl-2.0.txt. Also, update the FSF's address in all source files that contain it.
DONT_BUILD.

git-svn-id: https://svn.eduke32.com/eduke32@4541 1a8010ca-5511-0410-912e-c29ae57300e0
2014-07-20 08:55:56 +00:00
helixhorned
7603f432df Rename sector[].filler member to '.fogpal'. From CON, keep the '.alignto' alias.
The overall situation is thus as follows:
 - in C and from Lua, that member is called 'fogpal'
 - In CON (both C-CON and LunaCON), it's 'fogpal' with 'alignto' being an alias;
   'filler' wasn't available before, either.
 - In m32script, it's 'fogpal' or 'alignto' ('filler' is not available any more)

git-svn-id: https://svn.eduke32.com/eduke32@4416 1a8010ca-5511-0410-912e-c29ae57300e0
2014-04-05 11:28:10 +00:00
terminx
ba0c64971c Widespread use of ARRAY_SIZE macro.
git-svn-id: https://svn.eduke32.com/eduke32@4385 1a8010ca-5511-0410-912e-c29ae57300e0
2014-03-22 09:25:15 +00:00
helixhorned
8029aceaa4 CON: add sprite pseudo-member 'isvalid', getting 1 if the sprite is valid.
And 0 otherwise. Before accessing a sprite that is not not known to be
definitely valid (e.g. a loop over all sprites from 0 to MAXSPRITES-1),
one should check for validity before accessing it in any other fashion.

git-svn-id: https://svn.eduke32.com/eduke32@4146 1a8010ca-5511-0410-912e-c29ae57300e0
2013-11-11 16:48:17 +00:00
helixhorned
4f88aaf4d2 Retire global 'lastvisinc'.
It was only ever used as upper bound to the time that a visibility change
decays, but since it does that in an exponential fashion, there's really
no point.

git-svn-id: https://svn.eduke32.com/eduke32@3961 1a8010ca-5511-0410-912e-c29ae57300e0
2013-07-18 18:08:13 +00:00
helixhorned
e13cae69ce LunaCON: add forgotted "screensound" to keyword list in con_lang.lua.
Also, fix 'spriteflags' directive.

git-svn-id: https://svn.eduke32.com/eduke32@3945 1a8010ca-5511-0410-912e-c29ae57300e0
2013-07-13 21:04:43 +00:00
helixhorned
6a33c2eec1 CON: New command 'screensound', unconditionally playing a session-wide sound.
git-svn-id: https://svn.eduke32.com/eduke32@3912 1a8010ca-5511-0410-912e-c29ae57300e0
2013-06-28 14:07:46 +00:00
helixhorned
2003954492 CON: add projectile member .userdata and predefined label PROJ_USERDATA.
It is a 32-bit signed integer. No version bump necessary, although CON code
accessing this new member will not work with earlier revisions (obviously).

git-svn-id: https://svn.eduke32.com/eduke32@3866 1a8010ca-5511-0410-912e-c29ae57300e0
2013-06-09 16:37:18 +00:00
hendricks266
4297507c8f Dynamicsoundremap.
git-svn-id: https://svn.eduke32.com/eduke32@3834 1a8010ca-5511-0410-912e-c29ae57300e0
2013-06-01 06:55:30 +00:00
hendricks266
ced47cf9fc Add qstrdim and screentext, powerful new functions for HUD text.
git-svn-id: https://svn.eduke32.com/eduke32@3833 1a8010ca-5511-0410-912e-c29ae57300e0
2013-06-01 06:55:00 +00:00
terminx
85cf8de0f3 Add support for shareware 0.99/1.0/1.1, for shits and giggles.
git-svn-id: https://svn.eduke32.com/eduke32@3803 1a8010ca-5511-0410-912e-c29ae57300e0
2013-05-23 18:28:04 +00:00
hendricks266
30f510d521 Add "rotatespritea" to CON and M32script.
I hope I didn't bruise Lunatic too much.

git-svn-id: https://svn.eduke32.com/eduke32@3610 1a8010ca-5511-0410-912e-c29ae57300e0
2013-03-25 04:33:03 +00:00
helixhorned
b92edcc798 Lunatic: projectiles...
git-svn-id: https://svn.eduke32.com/eduke32@3463 1a8010ca-5511-0410-912e-c29ae57300e0
2013-02-07 21:01:03 +00:00
helixhorned
8e0c7b133e Move around some #ifdef LUNATIC to compile out more code, minor cleanup.
git-svn-id: https://svn.eduke32.com/eduke32@3459 1a8010ca-5511-0410-912e-c29ae57300e0
2013-02-07 21:00:48 +00:00
helixhorned
142e36d6f4 Lunatic: cmdline switch to run test script, compile out more code, 2 more GVs.
git-svn-id: https://svn.eduke32.com/eduke32@3415 1a8010ca-5511-0410-912e-c29ae57300e0
2013-01-20 21:17:06 +00:00
helixhorned
2b0b8d34cc Remove mixed Lunatic/legacy build option.
git-svn-id: https://svn.eduke32.com/eduke32@3410 1a8010ca-5511-0410-912e-c29ae57300e0
2013-01-19 18:29:00 +00:00
helixhorned
fb1db25c4e Consolidate badly named HUD weapon globals ("g_looking_angSR1") into struct.
git-svn-id: https://svn.eduke32.com/eduke32@3408 1a8010ca-5511-0410-912e-c29ae57300e0
2013-01-19 18:28:48 +00:00
helixhorned
a24ab8d4fa Factor out some code into C_AllocQuote() and C_InitQuotes().
In Lunatic-only build, also always allocate the first 128 quotes.

git-svn-id: https://svn.eduke32.com/eduke32@3356 1a8010ca-5511-0410-912e-c29ae57300e0
2013-01-01 15:24:25 +00:00
helixhorned
fd390efe2a Lunatic: compile out more code with LUNATIC_ONLY.
git-svn-id: https://svn.eduke32.com/eduke32@3354 1a8010ca-5511-0410-912e-c29ae57300e0
2013-01-01 15:24:18 +00:00
helixhorned
9c328bf0a5 Encapsulate aplWeapon* array accesses in a PWEAPON(Player, Weapon, Wmember) macro.
In the normal game, these arrays are conceptually [MAX_WEAPONS][MAXPLAYERS],
allocated as CON per-player gamevars (e.g. WEAPONx_WORKSLIKE).
For Lunatic, they are replaced with
weapondata_t g_playerWeapon[MAXPLAYERS][MAX_WEAPONS].

git-svn-id: https://svn.eduke32.com/eduke32@3328 1a8010ca-5511-0410-912e-c29ae57300e0
2012-12-28 17:18:16 +00:00
helixhorned
f1b1ce2cc3 Replace wall of dup'd code in Gv_AddSystemVars with something more readable.
Specifically, have a weapondata_t type mimicking the aplWeapon* arrays.
Keep a list weapondefaults[] which undergoes some static->dynamic tweaks
and then makes its way to the WEAPONx_XXX per-player gamevars.

git-svn-id: https://svn.eduke32.com/eduke32@3327 1a8010ca-5511-0410-912e-c29ae57300e0
2012-12-28 17:18:12 +00:00
hendricks266
6f2fa332dd Port system gamearray access from M32Script to CON. Expose tilesizx and tilesizy.
Also, fix deficient logic in Gv_Free and Gv_Clear (both M32 and CON) so that gamevar and gamearray erasure results are (closer to) correct, and so that the game does not crash when system arrays are accessed from CON because they all have been nulled.

git-svn-id: https://svn.eduke32.com/eduke32@3274 1a8010ca-5511-0410-912e-c29ae57300e0
2012-12-13 02:33:53 +00:00
helixhorned
5c06ef08bf Make EventNames[] an array of (const char *) instead of const tokenlist.
git-svn-id: https://svn.eduke32.com/eduke32@3258 1a8010ca-5511-0410-912e-c29ae57300e0
2012-12-09 13:24:36 +00:00
helixhorned
375d164138 Move enum vmflags_t to gameexec.c since it's an implementation detail.
git-svn-id: https://svn.eduke32.com/eduke32@3242 1a8010ca-5511-0410-912e-c29ae57300e0
2012-11-29 12:49:34 +00:00
terminx
ed464aaadc Add "ulotag" and "uhitag" to get/setactor/wall/sector, which exposes the tags unsigned, without the typecast to int16_t. This might be useful to someone.
git-svn-id: https://svn.eduke32.com/eduke32@3192 1a8010ca-5511-0410-912e-c29ae57300e0
2012-11-16 00:54:04 +00:00
helixhorned
3bcdc5acb8 Lunatic reorganization part 2: split into engine and editor/game parts.
On the engine side (functions starting with L_), there are now the basic
parts like state creation and running code from strings and files.
The game and editor can add to that by e.g. loading whatever they please
into the state. Their functions start with El_ and Em_, respectively.
The Lua scripts still reside in source/lunatic, even for the common ones.
This is because they will be embedded into the binaries as bytecode or
compressed source eventually, so their location on disk will be irrelevant.

git-svn-id: https://svn.eduke32.com/eduke32@3148 1a8010ca-5511-0410-912e-c29ae57300e0
2012-11-10 20:59:00 +00:00
terminx
88c95a18f7 Retire the actorscrptr[], actorLoadEventScrptr[], SpriteFlags[], ActorType[], SpriteCacheList[], ProjectileData[] and DefaultProjectile[] arrays in favor of a tile_t structure exposed as g_tile[]. This consolidates most of the MAXTILES sized arrays on the game side into one place.
git-svn-id: https://svn.eduke32.com/eduke32@3102 1a8010ca-5511-0410-912e-c29ae57300e0
2012-10-30 15:54:35 +00:00
hendricks266
2066656aed Two new player structure members: "autostep" and "autostep_sbw".
These control the maximum difference in height between two sectors that the player will automatically traverse without needing to jump.

The latter controls the special case when the player's sector's lotag is ST_1_ABOVE_WATER or p->spritebridge == 1.

BYTEVERSION bumped.

git-svn-id: https://svn.eduke32.com/eduke32@3100 1a8010ca-5511-0410-912e-c29ae57300e0
2012-10-29 04:29:17 +00:00
terminx
bc9a29b121 CON access to ud.runkey_mode through get/setuserdef
git-svn-id: https://svn.eduke32.com/eduke32@3071 1a8010ca-5511-0410-912e-c29ae57300e0
2012-10-14 18:18:30 +00:00
terminx
9120696e86 Minor cleanups in actors.c, mostly relating to custom projectiles and the like. A bug causing custom projectiles to knock the player back twice as far as the hard-coded ones was also fixed. There should be no other functional changes for the end user.
git-svn-id: https://svn.eduke32.com/eduke32@3053 1a8010ca-5511-0410-912e-c29ae57300e0
2012-10-05 20:48:10 +00:00
helixhorned
7305fbbae9 Add macro CON_ERRPRINTF(Fmt, ...) and use that everywhere.
git-svn-id: https://svn.eduke32.com/eduke32@3000 1a8010ca-5511-0410-912e-c29ae57300e0
2012-09-05 17:25:47 +00:00
helixhorned
bdedbc6f76 Constify various char* vars, parameters, etc. for more -Wwrite-strings cleanness
-Wwrite-strings is useful to detect code where string literals and e.g. alloc'd
strings are used side-by-side, potentially creating dangerous situations, or to
find uses of old, non-constified APIs.  However, enabling it would still flood
the log with too many warnings.  Also, GCC wrongly warns for initializations of
char arrays.

git-svn-id: https://svn.eduke32.com/eduke32@2796 1a8010ca-5511-0410-912e-c29ae57300e0
2012-07-01 22:11:33 +00:00
helixhorned
5bdbd2eda5 Lunatic/LT: provide the predefined labels in con_lang, add "strict" from luajit.
The latter is only for development, since the embedded version already has a
undeclared-var-reference handling similar to that.  Also fix parm2memberpat.

git-svn-id: https://svn.eduke32.com/eduke32@2762 1a8010ca-5511-0410-912e-c29ae57300e0
2012-06-17 19:45:33 +00:00
helixhorned
1ae1bfa479 New CON command 'showviewunbiased', mapping the screen coords w/o round-to-0 bias.
The showview command transforms the 320-based screen bound coordinates to the real
screen bounds like xreal = (x*xdim)/320, which shows a bias towards zero: for
example, for a 1680 screen width, the maximum permissible value 319 is mapped to
round_to_zero((319*1680)/320) == 1674.  (The rounding is implicit in the integer
division).  This makes it impossible for a view to cover the whole screen with any
other resolution than 320x200.  The new command transforms the bounds like
xreal = (x*(xdim-1))/319, which would map 319 to 1679 in the preceding example.

git-svn-id: https://svn.eduke32.com/eduke32@2573 1a8010ca-5511-0410-912e-c29ae57300e0
2012-03-31 11:22:00 +00:00
helixhorned
e7f091cd90 Factor out various instances of getatoken() into common.c.
Alongside, these make into into the header:
 - the 'tokenlist' type (a typedef'd struct)
 - the T_EOF and T_ERROR enumeration values

git-svn-id: https://svn.eduke32.com/eduke32@2549 1a8010ca-5511-0410-912e-c29ae57300e0
2012-03-26 22:05:23 +00:00
helixhorned
3917e05c1e Remove non-SAMESIZE_ACTOR_T code and remaining #defines.
We've been running with same-sized actor_t for a while without problems now.
In the unlikely event (famous last words) that an issue should pop up later,
this revision should be consulted for the differences between the two versions.

git-svn-id: https://svn.eduke32.com/eduke32@2451 1a8010ca-5511-0410-912e-c29ae57300e0
2012-03-11 17:37:50 +00:00
hendricks266
1c2ea1e96e Add "echo" CON command which allows the user to print a quote only to the console and log file, for debugging or informational purposes. EVENT_INIT can finally be put to use!
git-svn-id: https://svn.eduke32.com/eduke32@2419 1a8010ca-5511-0410-912e-c29ae57300e0
2012-03-05 07:24:04 +00:00
helixhorned
aee01a4958 Use a tokenlist for the event names and add tokenlist typedef to gamedef.h.
git-svn-id: https://svn.eduke32.com/eduke32@2327 1a8010ca-5511-0410-912e-c29ae57300e0
2012-02-09 22:44:26 +00:00
helixhorned
ebb3d0a378 gamedef.c: make some variables static and remove some #if 0'ed code.
git-svn-id: https://svn.eduke32.com/eduke32@2262 1a8010ca-5511-0410-912e-c29ae57300e0
2012-01-15 22:40:16 +00:00
helixhorned
ff6284ea8c Enable SAMESIZE_ACTOR_T described earlier.
git-svn-id: https://svn.eduke32.com/eduke32@2208 1a8010ca-5511-0410-912e-c29ae57300e0
2011-12-25 15:34:22 +00:00
helixhorned
8e54a3febf Preliminary commoning of actor[].t_data[10] to an array of int32's on both
32- and 64-bit platforms. Also, make struct type actor_t also have a common
size of 128 bytes. New code currently disabled and #ifdef'd for comparison.

This requires certain t_data[] entries ([1]: move ptr, [4]: action ptr and
[5]: ai ptr with actors) to be converted to script offsets instead of pointers,
breaking savegame and net packet compatibility (we could in theory try hard not
to, but it would be too much trouble).

git-svn-id: https://svn.eduke32.com/eduke32@2185 1a8010ca-5511-0410-912e-c29ae57300e0
2011-12-21 18:40:47 +00:00
helixhorned
e94243d7db New CON command
setactorsoundpitch <actor#> <sound#> <pitchoffset>
which can be used to change the pitch of a playing sound.

The pitch offset has the same meaning as the definesound pitch range endpoints,
i.e. the units are 1/100th of a seminote.  Note that just like the random pitch
offset, increasing the pitch makes the sound duration shorter (and vice versa).

git-svn-id: https://svn.eduke32.com/eduke32@2104 1a8010ca-5511-0410-912e-c29ae57300e0
2011-11-03 23:08:54 +00:00
helixhorned
a15d8bfb98 * new editor cfg options: corruptcheck_noalreadyrefd (silinces 'already referenced warning'), r_usenewaspect, r_screenxy
* Read-only CON access to sector bunchnums by adding the labels '.ceilingbunch' and '.floorbunch' to the CON sector structure

git-svn-id: https://svn.eduke32.com/eduke32@1931 1a8010ca-5511-0410-912e-c29ae57300e0
2011-07-10 15:39:21 +00:00
terminx
ef61e48c25 Patch from Hendricks266 and whatever changes happened to be in my tree. I hope they work ;)
"The most noticeable change is the addition of the "includedefault" CON and DEF command, which will attempt to include eduke.con (or nam.con, or ww2gi.con), then game.con, or duke3d.def, or nam.def, or ww2gi.def. This is useful for TCs like my add-ons, where for my pseudo-mutators I currently say "include EDUKE.CON", but I also have to juggle this terrible order of paths, so that I can have an EDUKE.CON file in my HRP which says "include GAME.CON" to allow the mainline game to actually run, but also allow DukePlus to load its EDUKE.CON file (since it uses that and not an -x switch), and also allow any custom EDUKE.CON files in the root to be used."


git-svn-id: https://svn.eduke32.com/eduke32@1909 1a8010ca-5511-0410-912e-c29ae57300e0
2011-06-19 00:11:52 +00:00
terminx
1fdafcdad6 Cleaning out my tree... mostly internal changes. Adds workaround to disable texture compression with the crappy fglrx driver on Linux, fixes FIRE sprites so that they don't render at their sector's floorz all the time, changes CON compiler around a bit to use a loop instead of calling C_ParseCommand() 10 million times.
git-svn-id: https://svn.eduke32.com/eduke32@1857 1a8010ca-5511-0410-912e-c29ae57300e0
2011-04-07 01:16:29 +00:00
helixhorned
cb321a9d76 New CON command 'clipmovenoslide', doing the same as clipmove but stopping at collisions before sliding calculations. Fixes a problem with Mapster32 where names.h was tried to be read before setting up the search path.
git-svn-id: https://svn.eduke32.com/eduke32@1711 1a8010ca-5511-0410-912e-c29ae57300e0
2010-10-09 22:59:17 +00:00
helixhorned
91250f081c New CON commands:
* sectsetinterpolation <sector>
 * sectclearinterpolation <sector>
 * clipmove <<ret>> <<x>> <<y>> <z> <<sectnum>> <xvect> <yvect> <walldist> <floordist> <ceildist> <clipmask>
 * lineintersect  <x1> <y1> <z1>  <x2> <y2> <z2>  <x3> <y3>  <x4> <y4>  <<intx>> <<inty>> <<intz>> <<ret>>
 * rayintersect <x1> <y1> <z1>  <xv> <yv> <zv>  <x3> <y3>  <x4> <y4>  <<intx>> <<inty>> <<intz>> <<ret>>
 * calchypotenuse <<ret>> <x> <y>
(all except *interpolation also in m32script). Also fixes Sect_ClearInterpolation to be symmetrical to its Set counterpart (shouldnt change anything since it was unused). Added "-conversion YYYYMMDD" switch for keyword-compatibility with old mods.
Mapster32: invisible sprite preview with Quote-i.

git-svn-id: https://svn.eduke32.com/eduke32@1708 1a8010ca-5511-0410-912e-c29ae57300e0
2010-09-27 21:52:04 +00:00
terminx
a7eb0418d1 Global thermonuclear code rape
git-svn-id: https://svn.eduke32.com/eduke32@1677 1a8010ca-5511-0410-912e-c29ae57300e0
2010-08-02 08:13:51 +00:00
terminx
8a3dd08b14 more multiplayer fixes
git-svn-id: https://svn.eduke32.com/eduke32@1673 1a8010ca-5511-0410-912e-c29ae57300e0
2010-07-22 20:29:09 +00:00
terminx
ac7767986a Updated synthesis script, moved some non-essential files around, updated license headers on all non-BUILDLIC files, added memory cache on top of texcache to improve load times, moved some duplicated keyboard handling stuff from winlayer/sdlayer to baselayer, fixed keypad / in Mapster32 tile selector, fixed bug where p->rotscrnang and p->look_ang never reset to 0, added support for reloading maphack based polymer lights after mode changes/savegame loads, other minor changes
git-svn-id: https://svn.eduke32.com/eduke32@1652 1a8010ca-5511-0410-912e-c29ae57300e0
2010-05-25 10:56:00 +00:00
terminx
45d93544a6 Source code "cleanup," herein referred to as "rape"
git-svn-id: https://svn.eduke32.com/eduke32@1625 1a8010ca-5511-0410-912e-c29ae57300e0
2010-05-02 23:27:30 +00:00
terminx
f0f56a6738 Added ifactorsound & stopactorsound, fixed qsprintf issues, removed dead unfinished fmod support code, fiddled with structure packing and data sizes to increase the max concurrent playbacks of the same sound from 4 to 8, fixed several sound bugs where when one player's jetpack or scuba sounds stopped in multiplayer, everyone's hitched, increased max sound voices to 96 (was 32)
git-svn-id: https://svn.eduke32.com/eduke32@1461 1a8010ca-5511-0410-912e-c29ae57300e0
2009-07-15 01:26:38 +00:00
terminx
1538f39289 fix building with MSVC after Helixhorned's commit
fix FastLZ mipmap corruption issue
fix Polymer MSVC warnings
rewrote qsprintf to take up to 32 parameters, either quotes or gamevars
added qstrncat to concatenate n characters of one quote to another
exposed internal sectorofwall() function to CON
changed CON parser to count ( ) ; and , as whitespace so people can make their code more readable
added ACTIVATOR and ACTIVATORLOCKED support to SE49 and SE50
added SPRITE_USEACTIVATOR flag to allow actor execution based on whether a sector is "locked" or not
rearranged a few structures for faster array lookups
fixed EVENT_HOLSTER


git-svn-id: https://svn.eduke32.com/eduke32@1457 1a8010ca-5511-0410-912e-c29ae57300e0
2009-07-12 01:55:34 +00:00
terminx
64f4c975c2 CON stuff
git-svn-id: https://svn.eduke32.com/eduke32@1436 1a8010ca-5511-0410-912e-c29ae57300e0
2009-06-19 01:10:10 +00:00
terminx
b7b016383f Sector effector based light sources, basic Mapster32 light support, additional sprite/model alpha control, sprite selection in Mapster32 3D mode with Polymer
git-svn-id: https://svn.eduke32.com/eduke32@1341 1a8010ca-5511-0410-912e-c29ae57300e0
2009-04-24 02:53:50 +00:00
terminx
22a7ec1b3b git-svn-id: https://svn.eduke32.com/eduke32@1315 1a8010ca-5511-0410-912e-c29ae57300e0 2009-04-13 06:01:50 +00:00
terminx
4ff6023244 git-svn-id: https://svn.eduke32.com/eduke32@1228 1a8010ca-5511-0410-912e-c29ae57300e0 2009-02-19 09:39:19 +00:00
terminx
16084e989e git-svn-id: https://svn.eduke32.com/eduke32@1207 1a8010ca-5511-0410-912e-c29ae57300e0 2009-01-13 04:40:56 +00:00
terminx
d6914ed108 ass rape
git-svn-id: https://svn.eduke32.com/eduke32@1205 1a8010ca-5511-0410-912e-c29ae57300e0
2009-01-09 09:29:17 +00:00
terminx
b53c959919 git-svn-id: https://svn.eduke32.com/eduke32@1204 1a8010ca-5511-0410-912e-c29ae57300e0 2009-01-07 14:05:13 +00:00
terminx
1cc73560f2 git-svn-id: https://svn.eduke32.com/eduke32@1203 1a8010ca-5511-0410-912e-c29ae57300e0 2009-01-06 06:59:18 +00:00
terminx
da8e368104 git-svn-id: https://svn.eduke32.com/eduke32@1188 1a8010ca-5511-0410-912e-c29ae57300e0 2008-12-19 00:53:54 +00:00
terminx
660f01cf46 git-svn-id: https://svn.eduke32.com/eduke32@1180 1a8010ca-5511-0410-912e-c29ae57300e0 2008-12-13 08:02:22 +00:00
terminx
cc73a2d7c6 new texcache stuff
git-svn-id: https://svn.eduke32.com/eduke32@1155 1a8010ca-5511-0410-912e-c29ae57300e0
2008-11-25 13:06:36 +00:00
terminx
4910928877 source code rape
git-svn-id: https://svn.eduke32.com/eduke32@1143 1a8010ca-5511-0410-912e-c29ae57300e0
2008-11-20 14:06:36 +00:00
terminx
efcd34c135 EDuke32: now with multiplayer text scaling hacks and nastiness
git-svn-id: https://svn.eduke32.com/eduke32@1095 1a8010ca-5511-0410-912e-c29ae57300e0
2008-10-11 09:20:04 +00:00
terminx
ccafc41189 Weapon sprite scaling, still needs a rotatespritescaled CON command
git-svn-id: https://svn.eduke32.com/eduke32@1090 1a8010ca-5511-0410-912e-c29ae57300e0
2008-10-05 11:51:59 +00:00
terminx
16cd3c353d Fixes
git-svn-id: https://svn.eduke32.com/eduke32@1082 1a8010ca-5511-0410-912e-c29ae57300e0
2008-09-29 02:12:53 +00:00
terminx
3776d580eb Cleaning uncommitted changes out of tree
git-svn-id: https://svn.eduke32.com/eduke32@1068 1a8010ca-5511-0410-912e-c29ae57300e0
2008-09-15 02:47:02 +00:00
terminx
60526dbb26 git-svn-id: https://svn.eduke32.com/eduke32@1062 1a8010ca-5511-0410-912e-c29ae57300e0 2008-09-11 09:24:45 +00:00
hnt_ts
0c77f4a6f5 Adds logic CON commands:
ifvaror |
ifvarxor ^
ifvareither || (rename?)


git-svn-id: https://svn.eduke32.com/eduke32@1060 1a8010ca-5511-0410-912e-c29ae57300e0
2008-09-07 12:36:20 +00:00
terminx
7b94cf4758 Misc tweaks, patch from HelixHorned, half of gameexec.c moved to gamestructures.c
git-svn-id: https://svn.eduke32.com/eduke32@1048 1a8010ca-5511-0410-912e-c29ae57300e0
2008-09-03 04:20:46 +00:00
terminx
352ace8bbc Move hash table code into engine and use hash table for OSD symbol lookup
git-svn-id: https://svn.eduke32.com/eduke32@1025 1a8010ca-5511-0410-912e-c29ae57300e0
2008-08-25 02:12:02 +00:00
terminx
37bce2588f git-svn-id: https://svn.eduke32.com/eduke32@1010 1a8010ca-5511-0410-912e-c29ae57300e0 2008-08-23 23:37:01 +00:00
hnt_ts
0e3ee1289d 1. EDuke32 didn't load ART files from the mod_dir. Fixed via the "root" string in "game.c".
2. Saving mod_dir to CFG is a bad idea IMHO so I commented it out. When I tried to load the standard game, EDuke32 would use the last used mod_dir.
3. Fixed tsprites.
4. EDSuke32 doesn't throw errors after 4096-th error. Resets the counter in ResetGameVars.
5. Restored 999 revision. Member names are changed. Extra members can be commented out.
6. Added an option(-sloppycmd) to allow execting of bad commands. This option should be renamed to something else.


git-svn-id: https://svn.eduke32.com/eduke32@1007 1a8010ca-5511-0410-912e-c29ae57300e0
2008-08-23 15:37:30 +00:00
terminx
9dbba623b8 New errors for when someone tries to use "define" to give something the same name as a gamevar
Some constantly used loops in the compiler have also been flipped around for faster execution.  Seems to speed up CON compilation a little bit.


git-svn-id: https://svn.eduke32.com/eduke32@1004 1a8010ca-5511-0410-912e-c29ae57300e0
2008-08-23 07:32:15 +00:00
terminx
dcc6d730a6 Revert commit 999 by hnt_ts
Access to the tspr's owner in EVENT_ANIMATESPRITES is through the THISACTOR variable.  The extra members of the sprite struct aren't represented in the tsprite CON implementation because they aren't referenced when rendering the sprite.


git-svn-id: https://svn.eduke32.com/eduke32@1002 1a8010ca-5511-0410-912e-c29ae57300e0
2008-08-23 01:21:17 +00:00
hnt_ts
73a9dbc80e 1. Improved access to tsprites. It even didn't have access to the owner member that points at the real sprite.
2. I don't know why the filler member(of the sprite/sector structure) was renamed in CONs but now it can be addressed by his real name as well.


git-svn-id: https://svn.eduke32.com/eduke32@999 1a8010ca-5511-0410-912e-c29ae57300e0
2008-08-22 16:31:03 +00:00
terminx
28fedd72e8 Ignore r_downsize for textures with nocompress and some other minor crap
git-svn-id: https://svn.eduke32.com/eduke32@990 1a8010ca-5511-0410-912e-c29ae57300e0
2008-08-19 11:05:21 +00:00
terminx
da6b206673 Rename definegamename to setgamename and alter the "map" console command to show a listing of all available maps if no map name is given
git-svn-id: https://svn.eduke32.com/eduke32@987 1a8010ca-5511-0410-912e-c29ae57300e0
2008-08-17 11:07:28 +00:00
terminx
63e5850a86 CON_SETCFGNAME: sets the name of the cfg during CON compile if a cfg wasn't specified on the command line
git-svn-id: https://svn.eduke32.com/eduke32@986 1a8010ca-5511-0410-912e-c29ae57300e0
2008-08-17 09:57:36 +00:00
terminx
132db81381 Beginnings of support for selecting mods in the startup window... win32 only for now
git-svn-id: https://svn.eduke32.com/eduke32@984 1a8010ca-5511-0410-912e-c29ae57300e0
2008-08-17 09:01:31 +00:00
hnt_ts
36d1cbd995 Added a new CON command: setgamepalette <pal>
git-svn-id: https://svn.eduke32.com/eduke32@980 1a8010ca-5511-0410-912e-c29ae57300e0
2008-08-16 11:20:08 +00:00
hnt_ts
d706c31766 Added an new CON command: activatecheat <cheatID>
git-svn-id: https://svn.eduke32.com/eduke32@964 1a8010ca-5511-0410-912e-c29ae57300e0
2008-08-10 16:28:25 +00:00
hnt_ts
79e2616dfc Renamed a CON command: getdate->gettimedate
git-svn-id: https://svn.eduke32.com/eduke32@958 1a8010ca-5511-0410-912e-c29ae57300e0
2008-08-10 08:58:34 +00:00
hnt_ts
5062ab8773 Added a CON command:
getdate <sec> <min> <hour> <mday> <mon> <year> <wday> <yday>

sec		seconds after the minute
min		minutes after the hour
hour	hours since midnight
mday	day of the month
mon		months since January
year	years since 1900
wday	days since Sunday
yday	days since January


git-svn-id: https://svn.eduke32.com/eduke32@955 1a8010ca-5511-0410-912e-c29ae57300e0
2008-08-09 19:59:41 +00:00
terminx
b9895ca078 CON access to hittype[].flags, better crosshair coloring code
git-svn-id: https://svn.eduke32.com/eduke32@939 1a8010ca-5511-0410-912e-c29ae57300e0
2008-08-07 23:32:18 +00:00
terminx
a5f12d9f55 New alternate mini-hud
git-svn-id: https://svn.eduke32.com/eduke32@934 1a8010ca-5511-0410-912e-c29ae57300e0
2008-08-07 07:52:36 +00:00
terminx
b1a5b6be67 useless shit changes that aren't even worth looking at
git-svn-id: https://svn.eduke32.com/eduke32@926 1a8010ca-5511-0410-912e-c29ae57300e0
2008-07-31 10:35:23 +00:00
hnt_ts
f5b049379c 1. Added CON command: cmenu <gamevar>
2. Added gamevar: current_menu(READONLY)

// Example: remove the episode selet screen
gamevar prev_menu 0 0
onevent EVENT_DISPLAYMENU
  ifvare current_menu 100 // Episode select
  {
    ifvare prev_menu 110 // Skill select
      cmenu 0 // Main menu
    else
      cmenu 110 // Skill select
  }

  setvarvar prev_menu current_menu
  // addlogvar current_menu
endevent


git-svn-id: https://svn.eduke32.com/eduke32@903 1a8010ca-5511-0410-912e-c29ae57300e0
2008-07-25 18:10:33 +00:00
terminx
11fc1203fa Game name in window title and some other shit
git-svn-id: https://svn.eduke32.com/eduke32@886 1a8010ca-5511-0410-912e-c29ae57300e0
2008-07-22 09:05:34 +00:00
terminx
86e70d3012 git-svn-id: https://svn.eduke32.com/eduke32@881 1a8010ca-5511-0410-912e-c29ae57300e0 2008-07-21 09:05:53 +00:00
terminx
a939f0fb48 CON_SCRIPTSIZE, lets mod authors manually increase the script size to whatever the mod needs, decreasing startup time due to not having to constantly reallocate memory.
git-svn-id: https://svn.eduke32.com/eduke32@874 1a8010ca-5511-0410-912e-c29ae57300e0
2008-07-20 03:29:00 +00:00
terminx
b367a392a7 Prototype stuff for hub maps/persistent level states/non-linear level progression
git-svn-id: https://svn.eduke32.com/eduke32@859 1a8010ca-5511-0410-912e-c29ae57300e0
2008-07-16 09:27:08 +00:00
terminx
99671274aa Make the tsprite CON stuff into its own commands
git-svn-id: https://svn.eduke32.com/eduke32@856 1a8010ca-5511-0410-912e-c29ae57300e0
2008-07-13 07:10:47 +00:00
terminx
5ce5b287fa git-svn-id: https://svn.eduke32.com/eduke32@855 1a8010ca-5511-0410-912e-c29ae57300e0 2008-07-12 23:44:07 +00:00
terminx
fb80a8ec28 CON access to tsprite
git-svn-id: https://svn.eduke32.com/eduke32@853 1a8010ca-5511-0410-912e-c29ae57300e0
2008-07-12 10:57:52 +00:00