mirror of
https://github.com/ZDoom/raze-gles.git
synced 2024-11-10 23:02:03 +00:00
- parse - part 6.
This commit is contained in:
parent
aa3d1fdcad
commit
38817c3bee
1 changed files with 46 additions and 48 deletions
|
@ -2846,11 +2846,11 @@ int ParseState::parse(void)
|
||||||
insptr++;
|
insptr++;
|
||||||
|
|
||||||
lIn = *insptr++;
|
lIn = *insptr++;
|
||||||
lIn = GetGameVarID(lIn, g_i, g_p);
|
lIn = GetGameVarID(lIn, g_ac, g_p);
|
||||||
if (g_sp->sectnum >= 0 && g_sp->sectnum < MAXSECTORS)
|
if (g_sp->sectnum >= 0 && g_sp->sectnum < MAXSECTORS)
|
||||||
lReturn = fi.spawn(g_i, lIn);
|
lReturn = fi.spawn(g_ac->GetIndex(), lIn);
|
||||||
|
|
||||||
SetGameVarID(g_iReturnVarID, lReturn, g_i, g_p);
|
SetGameVarID(g_iReturnVarID, lReturn, g_ac, g_p);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case concmd_espawn:
|
case concmd_espawn:
|
||||||
|
@ -2859,9 +2859,9 @@ int ParseState::parse(void)
|
||||||
lReturn = -1;
|
lReturn = -1;
|
||||||
insptr++;
|
insptr++;
|
||||||
if (g_sp->sectnum >= 0 && g_sp->sectnum < MAXSECTORS)
|
if (g_sp->sectnum >= 0 && g_sp->sectnum < MAXSECTORS)
|
||||||
lReturn = fi.spawn(g_i, *insptr);
|
lReturn = fi.spawn(g_ac->GetIndex(), *insptr);
|
||||||
insptr++;
|
insptr++;
|
||||||
SetGameVarID(g_iReturnVarID, lReturn, g_i, g_p);
|
SetGameVarID(g_iReturnVarID, lReturn, g_ac, g_p);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case concmd_setsector:
|
case concmd_setsector:
|
||||||
|
@ -2879,7 +2879,7 @@ int ParseState::parse(void)
|
||||||
lLabelID = *(insptr++);
|
lLabelID = *(insptr++);
|
||||||
lParm2 = *(insptr++);
|
lParm2 = *(insptr++);
|
||||||
lVar2 = *(insptr++);
|
lVar2 = *(insptr++);
|
||||||
DoSector(lWhat == concmd_setsector, lVar1, lLabelID, lVar2, g_i, g_p, lParm2);
|
DoSector(lWhat == concmd_setsector, lVar1, lLabelID, lVar2, g_ac->GetIndex(), g_p, lParm2);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case concmd_sqrt:
|
case concmd_sqrt:
|
||||||
|
@ -2893,8 +2893,8 @@ int ParseState::parse(void)
|
||||||
insptr++;
|
insptr++;
|
||||||
lInVarID = *(insptr++);
|
lInVarID = *(insptr++);
|
||||||
lOutVarID = *(insptr++);
|
lOutVarID = *(insptr++);
|
||||||
lIn = GetGameVarID(lInVarID, g_i, g_p);
|
lIn = GetGameVarID(lInVarID, g_ac, g_p);
|
||||||
SetGameVarID(lOutVarID, ksqrt(lIn), g_i, g_p);
|
SetGameVarID(lOutVarID, ksqrt(lIn), g_ac, g_p);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case concmd_findnearactor:
|
case concmd_findnearactor:
|
||||||
|
@ -2910,7 +2910,6 @@ int ParseState::parse(void)
|
||||||
int lTemp;
|
int lTemp;
|
||||||
int lFound;
|
int lFound;
|
||||||
int lDist;
|
int lDist;
|
||||||
short j;
|
|
||||||
|
|
||||||
insptr++;
|
insptr++;
|
||||||
|
|
||||||
|
@ -2921,23 +2920,23 @@ int ParseState::parse(void)
|
||||||
lFound = -1;
|
lFound = -1;
|
||||||
lDist = 32767; // big number
|
lDist = 32767; // big number
|
||||||
|
|
||||||
StatIterator it(STAT_ACTOR);
|
DukeStatIterator it(STAT_ACTOR);
|
||||||
while ((j = it.NextIndex()) >= 0)
|
while (auto j = it.Next())
|
||||||
{
|
{
|
||||||
if (sprite[j].picnum == lType)
|
if (j->s.picnum == lType)
|
||||||
{
|
{
|
||||||
lTemp = ldist(&sprite[g_i], &sprite[j]);
|
lTemp = ldist(g_ac, j);
|
||||||
if (lTemp < lMaxDist)
|
if (lTemp < lMaxDist)
|
||||||
{
|
{
|
||||||
if (lTemp < lDist)
|
if (lTemp < lDist)
|
||||||
{
|
{
|
||||||
lFound = j;
|
lFound = j->GetIndex();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
SetGameVarID(lVarID, lFound, g_i, g_p);
|
SetGameVarID(lVarID, lFound, g_ac, g_p);
|
||||||
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -2955,34 +2954,33 @@ int ParseState::parse(void)
|
||||||
int lTemp;
|
int lTemp;
|
||||||
int lFound;
|
int lFound;
|
||||||
int lDist;
|
int lDist;
|
||||||
short j;
|
|
||||||
|
|
||||||
insptr++;
|
insptr++;
|
||||||
|
|
||||||
lType = *(insptr++);
|
lType = *(insptr++);
|
||||||
lMaxDistVar = *(insptr++);
|
lMaxDistVar = *(insptr++);
|
||||||
lVarID = *(insptr++);
|
lVarID = *(insptr++);
|
||||||
lMaxDist = GetGameVarID(lMaxDistVar, g_i, g_p);
|
lMaxDist = GetGameVarID(lMaxDistVar, g_ac, g_p);
|
||||||
lFound = -1;
|
lFound = -1;
|
||||||
lDist = 32767; // big number
|
lDist = 32767; // big number
|
||||||
|
|
||||||
StatIterator it(STAT_ACTOR);
|
DukeStatIterator it(STAT_ACTOR);
|
||||||
while ((j = it.NextIndex()) >= 0)
|
while (auto j = it.Next())
|
||||||
{
|
{
|
||||||
if (sprite[j].picnum == lType)
|
if (j->s.picnum == lType)
|
||||||
{
|
{
|
||||||
lTemp = ldist(&sprite[g_i], &sprite[j]);
|
lTemp = ldist(g_ac, j);
|
||||||
if (lTemp < lMaxDist)
|
if (lTemp < lMaxDist)
|
||||||
{
|
{
|
||||||
if (lTemp < lDist)
|
if (lTemp < lDist)
|
||||||
{
|
{
|
||||||
lFound = j;
|
lFound = j->GetIndex();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
SetGameVarID(lVarID, lFound, g_i, g_p);
|
SetGameVarID(lVarID, lFound, g_ac, g_p);
|
||||||
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -3002,7 +3000,7 @@ int ParseState::parse(void)
|
||||||
lParm2 = *(insptr++);
|
lParm2 = *(insptr++);
|
||||||
lVar2 = *(insptr++);
|
lVar2 = *(insptr++);
|
||||||
|
|
||||||
DoPlayer(lWhat == concmd_setplayer, lVar1, lLabelID, lVar2, g_i, g_p, lParm2);
|
DoPlayer(lWhat == concmd_setplayer, lVar1, lLabelID, lVar2, g_ac->GetIndex(), g_p, lParm2);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case concmd_getuserdef:
|
case concmd_getuserdef:
|
||||||
|
@ -3021,7 +3019,7 @@ int ParseState::parse(void)
|
||||||
lParm2 = *(insptr++);
|
lParm2 = *(insptr++);
|
||||||
lVar2 = *(insptr++);
|
lVar2 = *(insptr++);
|
||||||
|
|
||||||
DoUserDef(lWhat == concmd_setuserdef, lVar1, lLabelID, lVar2, g_i, g_p, lParm2);
|
DoUserDef(lWhat == concmd_setuserdef, lVar1, lLabelID, lVar2, g_ac->GetIndex(), g_p, lParm2);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case concmd_setwall:
|
case concmd_setwall:
|
||||||
|
@ -3040,7 +3038,7 @@ int ParseState::parse(void)
|
||||||
lParm2 = *(insptr++);
|
lParm2 = *(insptr++);
|
||||||
lVar2 = *(insptr++);
|
lVar2 = *(insptr++);
|
||||||
|
|
||||||
DoWall(lWhat == concmd_setwall, lVar1, lLabelID, lVar2, g_i, g_p, lParm2);
|
DoWall(lWhat == concmd_setwall, lVar1, lLabelID, lVar2, g_ac->GetIndex(), g_p, lParm2);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case concmd_setactorvar:
|
case concmd_setactorvar:
|
||||||
|
@ -3057,10 +3055,10 @@ int ParseState::parse(void)
|
||||||
lVar2 = *(insptr++);
|
lVar2 = *(insptr++);
|
||||||
lVar3 = *(insptr++);
|
lVar3 = *(insptr++);
|
||||||
|
|
||||||
lSprite = GetGameVarID(lVar1, g_i, g_p);
|
lSprite = GetGameVarID(lVar1, g_ac, g_p);
|
||||||
if (lSprite >= 0)
|
if (lSprite >= 0)
|
||||||
{
|
{
|
||||||
lTemp = GetGameVarID(lVar3, g_i, g_p);
|
lTemp = GetGameVarID(lVar3, g_ac, g_p);
|
||||||
SetGameVarID(lVar2, lTemp, lSprite, g_p);
|
SetGameVarID(lVar2, lTemp, lSprite, g_p);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3080,11 +3078,11 @@ int ParseState::parse(void)
|
||||||
lVar2 = *(insptr++);
|
lVar2 = *(insptr++);
|
||||||
lVar3 = *(insptr++);
|
lVar3 = *(insptr++);
|
||||||
|
|
||||||
lSprite = GetGameVarID(lVar1, g_i, g_p);
|
lSprite = GetGameVarID(lVar1, g_ac, g_p);
|
||||||
if (lSprite >= 0)
|
if (lSprite >= 0)
|
||||||
{
|
{
|
||||||
lTemp = GetGameVarID(lVar2, lSprite, g_p);
|
lTemp = GetGameVarID(lVar2, lSprite, g_p);
|
||||||
SetGameVarID(lVar3, lTemp, g_i, g_p);
|
SetGameVarID(lVar3, lTemp, g_ac, g_p);
|
||||||
}
|
}
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
@ -3105,7 +3103,7 @@ int ParseState::parse(void)
|
||||||
lParm2 = *(insptr++);
|
lParm2 = *(insptr++);
|
||||||
lVar2 = *(insptr++);
|
lVar2 = *(insptr++);
|
||||||
|
|
||||||
DoActor(lWhat == concmd_setactor, lVar1, lLabelID, lVar2, g_i, g_p, lParm2);
|
DoActor(lWhat == concmd_setactor, lVar1, lLabelID, lVar2, g_ac->GetIndex(), g_p, lParm2);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case concmd_getangletotarget:
|
case concmd_getangletotarget:
|
||||||
|
@ -3116,9 +3114,9 @@ int ParseState::parse(void)
|
||||||
insptr++;
|
insptr++;
|
||||||
i = *(insptr++); // ID of def
|
i = *(insptr++); // ID of def
|
||||||
|
|
||||||
// hittype[g_i].lastvx and lastvy are last known location of target.
|
// g_ac->lastvx and lastvy are last known location of target.
|
||||||
ang = getangle(hittype[g_i].lastvx - g_sp->x, hittype[g_i].lastvy - g_sp->y);
|
ang = getangle(g_ac->lastvx - g_sp->x, g_ac->lastvy - g_sp->y);
|
||||||
SetGameVarID(i, ang, g_i, g_p);
|
SetGameVarID(i, ang, g_ac, g_p);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case concmd_lockplayer:
|
case concmd_lockplayer:
|
||||||
|
@ -3126,7 +3124,7 @@ int ParseState::parse(void)
|
||||||
int i;
|
int i;
|
||||||
insptr++;
|
insptr++;
|
||||||
i = *(insptr++); // ID of def
|
i = *(insptr++); // ID of def
|
||||||
ps[g_p].transporter_hold = GetGameVarID(i, g_i, g_p);
|
ps[g_p].transporter_hold = GetGameVarID(i, g_ac, g_p);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case concmd_getplayerangle:
|
case concmd_getplayerangle:
|
||||||
|
@ -3134,7 +3132,7 @@ int ParseState::parse(void)
|
||||||
int i;
|
int i;
|
||||||
insptr++;
|
insptr++;
|
||||||
i = *(insptr++); // ID of def
|
i = *(insptr++); // ID of def
|
||||||
SetGameVarID(i, ps[g_p].angle.ang.asbuild(), g_i, g_p);
|
SetGameVarID(i, ps[g_p].angle.ang.asbuild(), g_ac, g_p);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case concmd_setplayerangle:
|
case concmd_setplayerangle:
|
||||||
|
@ -3142,7 +3140,7 @@ int ParseState::parse(void)
|
||||||
int i;
|
int i;
|
||||||
insptr++;
|
insptr++;
|
||||||
i = *(insptr++); // ID of def
|
i = *(insptr++); // ID of def
|
||||||
ps[g_p].angle.ang = buildang(GetGameVarID(i, g_i, g_p) & 2047);
|
ps[g_p].angle.ang = buildang(GetGameVarID(i, g_ac, g_p) & 2047);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case concmd_getactorangle:
|
case concmd_getactorangle:
|
||||||
|
@ -3150,7 +3148,7 @@ int ParseState::parse(void)
|
||||||
int i;
|
int i;
|
||||||
insptr++;
|
insptr++;
|
||||||
i = *(insptr++); // ID of def
|
i = *(insptr++); // ID of def
|
||||||
SetGameVarID(i, g_sp->ang, g_i, g_p);
|
SetGameVarID(i, g_sp->ang, g_ac, g_p);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case concmd_setactorangle:
|
case concmd_setactorangle:
|
||||||
|
@ -3158,7 +3156,7 @@ int ParseState::parse(void)
|
||||||
int i;
|
int i;
|
||||||
insptr++;
|
insptr++;
|
||||||
i = *(insptr++); // ID of def
|
i = *(insptr++); // ID of def
|
||||||
g_sp->ang = GetGameVarID(i, g_i, g_p);
|
g_sp->ang = GetGameVarID(i, g_ac, g_p);
|
||||||
g_sp->ang &= 2047;
|
g_sp->ang &= 2047;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -3167,7 +3165,7 @@ int ParseState::parse(void)
|
||||||
int i;
|
int i;
|
||||||
insptr++;
|
insptr++;
|
||||||
i = *(insptr++); // ID of def
|
i = *(insptr++); // ID of def
|
||||||
SetGameVarID(i, mulscale(rand(), *insptr, 15), g_i, g_p);
|
SetGameVarID(i, mulscale(rand(), *insptr, 15), g_ac, g_p);
|
||||||
insptr++;
|
insptr++;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -3176,7 +3174,7 @@ int ParseState::parse(void)
|
||||||
int i;
|
int i;
|
||||||
insptr++;
|
insptr++;
|
||||||
i = *(insptr++); // ID of def
|
i = *(insptr++); // ID of def
|
||||||
SetGameVarID(i, GetGameVarID(i, g_i, g_p) * (*insptr), g_i, g_p);
|
SetGameVarID(i, GetGameVarID(i, g_ac, g_p) * (*insptr), g_ac, g_p);
|
||||||
insptr++;
|
insptr++;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -3189,7 +3187,7 @@ int ParseState::parse(void)
|
||||||
{
|
{
|
||||||
I_Error("Divide by Zero in CON.");
|
I_Error("Divide by Zero in CON.");
|
||||||
}
|
}
|
||||||
SetGameVarID(i, GetGameVarID(i, g_i, g_p) / (*insptr), g_i, g_p);
|
SetGameVarID(i, GetGameVarID(i, g_ac, g_p) / (*insptr), g_ac, g_p);
|
||||||
insptr++;
|
insptr++;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -3205,8 +3203,8 @@ int ParseState::parse(void)
|
||||||
{
|
{
|
||||||
I_Error("Divide by Zero in CON");
|
I_Error("Divide by Zero in CON");
|
||||||
}
|
}
|
||||||
lResult = GetGameVarID(i, g_i, g_p) % l;
|
lResult = GetGameVarID(i, g_ac, g_p) % l;
|
||||||
SetGameVarID(i, lResult, g_i, g_p);
|
SetGameVarID(i, lResult, g_ac, g_p);
|
||||||
insptr++;
|
insptr++;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -3218,8 +3216,8 @@ int ParseState::parse(void)
|
||||||
insptr++;
|
insptr++;
|
||||||
i = *(insptr++); // ID of def
|
i = *(insptr++); // ID of def
|
||||||
l = (*insptr);
|
l = (*insptr);
|
||||||
lResult = GetGameVarID(i, g_i, g_p) & l;
|
lResult = GetGameVarID(i, g_ac, g_p) & l;
|
||||||
SetGameVarID(i, lResult, g_i, g_p);
|
SetGameVarID(i, lResult, g_ac, g_p);
|
||||||
insptr++;
|
insptr++;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -3231,8 +3229,8 @@ int ParseState::parse(void)
|
||||||
insptr++;
|
insptr++;
|
||||||
i = *(insptr++); // ID of def
|
i = *(insptr++); // ID of def
|
||||||
l = (*insptr);
|
l = (*insptr);
|
||||||
lResult = GetGameVarID(i, g_i, g_p) ^ l;
|
lResult = GetGameVarID(i, g_ac, g_p) ^ l;
|
||||||
SetGameVarID(i, lResult, g_i, g_p);
|
SetGameVarID(i, lResult, g_ac, g_p);
|
||||||
insptr++;
|
insptr++;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue