Added some commands for getting the current compiled CON ptr and jumping to another location

git-svn-id: https://svn.eduke32.com/eduke32@277 1a8010ca-5511-0410-912e-c29ae57300e0
This commit is contained in:
terminx 2006-08-28 19:18:05 +00:00
parent b4ed27fa7d
commit 8765f0a215
5 changed files with 48 additions and 19 deletions

View file

@ -1597,7 +1597,7 @@ void Keys3d(void)
if (keystatus[0x4] > 0) /* 3 (toggle floor-over-floor (cduke3d only) */ if (keystatus[0x4] > 0) /* 3 (toggle floor-over-floor (cduke3d only) */
{ {
floor_over_floor = !floor_over_floor; floor_over_floor = !floor_over_floor;
if (!floor_over_floor) ResetFOFSize(); // if (!floor_over_floor) ResetFOFSize();
keystatus[0x4] = 0; keystatus[0x4] = 0;
} }

View file

@ -441,6 +441,8 @@ char *keyw[] = {
"findnearspritezvar", // 294 "findnearspritezvar", // 294
"zshootvar", // 295 "zshootvar", // 295
"ezshootvar", // 296 "ezshootvar", // 296
"getcurraddress", // 297
"jump", // 298
"<null>" "<null>"
}; };
@ -3464,6 +3466,10 @@ char parsecommand(void)
break; break;
} }
case CON_GETCURRADDRESS:
transvartype(GAMEVAR_FLAG_READONLY);
return 0;
case CON_ESHOOTVAR: case CON_ESHOOTVAR:
case CON_ESPAWNVAR: case CON_ESPAWNVAR:
case CON_QSPAWNVAR: case CON_QSPAWNVAR:
@ -3477,6 +3483,7 @@ char parsecommand(void)
case CON_SHOOTVAR: case CON_SHOOTVAR:
if(!CheckEventSync(current_event)) if(!CheckEventSync(current_event))
ReportError(WARNING_EVENTSYNC); ReportError(WARNING_EVENTSYNC);
case CON_JUMP:
case CON_SOUNDVAR: case CON_SOUNDVAR:
case CON_GLOBALSOUNDVAR: case CON_GLOBALSOUNDVAR:
case CON_STOPSOUNDVAR: case CON_STOPSOUNDVAR:

View file

@ -728,5 +728,7 @@ enum keywords {
CON_FINDNEARSPRITEZVAR, // 294 CON_FINDNEARSPRITEZVAR, // 294
CON_ZSHOOTVAR, // 295 CON_ZSHOOTVAR, // 295
CON_EZSHOOTVAR, // 296 CON_EZSHOOTVAR, // 296
CON_GETCURRADDRESS, // 297
CON_JUMP, // 298
END END
}; };

View file

@ -6662,6 +6662,26 @@ good:
break; break;
} }
case CON_GETCURRADDRESS:
{
int i;
insptr++;
i=*insptr++;
SetGameVarID(i, (long)insptr, g_i, g_p );
break;
}
case CON_JUMP:
{
int ptr;
insptr++;
ptr = GetGameVarID(*insptr++, g_i, g_p);
insptr = (long *)ptr;
break;
}
default: default:
Bsprintf(tempbuf,"fatal error: Default processing in parse(): %ld, %ld\ncurrent actor: %d %d",*insptr,*(insptr-1),g_i,g_sp->picnum); Bsprintf(tempbuf,"fatal error: Default processing in parse(): %ld, %ld\ncurrent actor: %d %d",*insptr,*(insptr-1),g_i,g_sp->picnum);
AddLog(tempbuf); AddLog(tempbuf);

View file

@ -9,12 +9,12 @@
#include "grpscan.h" #include "grpscan.h"
struct grpfile grpfiles[numgrpfiles] = { struct grpfile grpfiles[numgrpfiles] = {
{ "Registered Version 1.3d", 0xBBC9CE44, 26524524, GAMEDUKE, NULL }, { "Duke Nukem 3D", 0xBBC9CE44, 26524524, GAMEDUKE, NULL },
{ "Registered Version 1.4", 0xF514A6AC, 44348015, GAMEDUKE, NULL }, { "Duke Nukem 3D: Atomic Edition", 0xF514A6AC, 44348015, GAMEDUKE, NULL },
{ "Registered Version 1.5", 0xFD3DCFF1, 44356548, GAMEDUKE, NULL }, { "Duke Nukem 3D: Atomic Edition", 0xFD3DCFF1, 44356548, GAMEDUKE, NULL },
{ "Shareware Version", 0x983AD923, 11035779, GAMEDUKE, NULL }, { "Duke Nukem 3D Shareware Version", 0x983AD923, 11035779, GAMEDUKE, NULL },
{ "Mac Shareware Version", 0xC5F71561, 10444391, GAMEDUKE, NULL }, { "Duke Nukem 3D Mac Shareware Version", 0xC5F71561, 10444391, GAMEDUKE, NULL },
{ "Mac Registered Version", 0x00000000, 0, GAMEDUKE, NULL }, { "Duke Nukem 3D Mac", 0x00000000, 0, GAMEDUKE, NULL },
{ "NAM", 0x75C1F07B, 43448927, GAMENAM, NULL }, { "NAM", 0x75C1F07B, 43448927, GAMENAM, NULL },
}; };
struct grpfile *foundgrps = NULL; struct grpfile *foundgrps = NULL;