23,8 → 23,9 |
gamevar temp3 0 2 |
gamevar temp4 0 2 |
gamevar ptemp 0 1 |
gamevar holodukeid 0 1 |
gamevar musicchange 0 1 |
gamevar skin DUKE 1 |
gamevar skin DUKE 132097 // do not reset flag enabled |
|
gamevar LOGO_FLAGS 767 0 // default; TEN screen reenabled |
|
193,6 → 194,15 |
killit |
} |
else |
ifactor CHANDELIER |
{ |
sound GLASS_BREAKING |
debris SCRAP3 3 |
debris SCRAP4 4 |
lotsofglass 10 |
killit |
} |
else |
ifactor TREEWITHSOMETHING |
{ |
sound GLASS_HEAVYBREAK |
233,6 → 243,8 |
|
useractor notenemy SNOWGIB WEAK state nwbreakobject enda |
|
useractor notenemy CHANDELIER WEAK state nwbreakobject enda |
|
useractor notenemy TREEWITHSOMETHING TOUGH state nwbreakobject enda |
|
actor JETPACK |
550,7 → 562,7 |
case 166 case 167 case 172 case 173 case 174 case 176 case 179 |
ifvarn musicchange 0 |
{ |
starttrack 2 // level music |
starttrackvar LEVEL // level music |
setvar musicchange 0 |
} |
break |
560,8 → 572,10 |
ends |
|
action ACOMMSPINNW 0 1 5 1 12 |
action ACOMMSHOOTNW 20 1 5 1 16 // this is custom to shorten the delay between firing freezeblasts |
|
ai AICOMMSPINNW ACOMMSPINNW COMMGETVELS spin |
ai AICOMMSHOOTNW ACOMMSHOOTNW COMMSTOPPED faceplayerslow |
|
state checkcommhitstate |
|
670,7 → 684,7 |
break |
} |
ifai 0 |
ai AICOMMSHOOT |
ai AICOMMSHOOTNW |
else |
ifai AICOMMWAIT |
{ |
696,7 → 710,7 |
ifactioncount 2 |
{ |
ifcansee |
ai AICOMMSHOOT |
ai AICOMMSHOOTNW |
else |
{ |
ai AICOMMGET |
706,7 → 720,7 |
ifrnd 32 soundonce COMM_ATTACK |
} |
else |
ifai AICOMMSHOOT |
ifai AICOMMSHOOTNW |
{ |
ifcanshoottarget |
{ |
713,6 → 727,7 |
ifcount 12 |
ifrnd 16 |
ai AICOMMWAIT |
|
ifactioncount 1 |
{ |
shoot FREEZEBLAST |
719,6 → 734,10 |
resetactioncount |
} |
|
getplayer[THISACTOR].i temp |
getactor[temp].pal temp |
ifvare temp 1 // if player is frozen |
ai AICOMMGET |
} |
else |
ai AICOMMGET |
744,13 → 763,24 |
ifrnd 4 |
operate |
ifpdistl 1024 |
{ |
ifp palive |
{ |
// sound COMM_SPIN |
sound COMM_SPIN |
ai AICOMMSPINNW |
break |
} |
|
getplayer[THISACTOR].i temp |
getactor[temp].pal temp |
ifvare temp 1 // if player is frozen |
{ |
sound COMM_SPIN |
ai AICOMMSPINNW |
break |
} |
} |
|
ifcansee |
{ |
ifp phigher |
770,10 → 800,17 |
{ |
ifpdistl 1280 |
{ |
addphealth CAPTSPINNINGPLAYER |
sound DUKE_GRUNT |
palfrom 32 |
16 resetcount |
setvar tempb CAPTSPINNINGPLAYER |
mulvar tempb -1 |
// addphealth CAPTSPINNINGPLAYER |
getplayer[THISACTOR].i temp |
setactor[temp].htextra tempb |
setactor[temp].htpicnum KNEE |
setactor[temp].htowner THISACTOR |
|
globalsound DUKE_GRUNT |
palfrom 32 16 |
resetcount |
} |
else |
ifpdistg 2300 |
946,7 → 983,20 |
// ----------------------------------------------------------------------------- |
|
onevent EVENT_GAME |
ifactor APLAYER state nwl3surprise |
ifactor APLAYER |
{ |
state nwl3surprise |
|
getplayer[THISACTOR].holoduke_on holodukeid |
ifvarg holodukeid -1 |
setactor[holodukeid].mdflags 16 |
|
// addlogvar skin |
} |
ifactor FRAMEEFFECT1 |
ifspawnedby APLAYER |
setactor[THISACTOR].mdflags 16 |
|
/* |
ifactor MONEY |
{ |
995,47 → 1045,36 |
endswitch |
} |
*/ |
getplayervar[THISACTOR].skin temp |
ifvare temp 1 |
|
switch picnum |
case APLAYER |
ifvare skin SANTA |
{ |
getplayer[THISACTOR].i temp2 |
gettspr[temp2].tsprpicnum temp3 |
gettspr[THISACTOR].tsprpicnum temp3 |
ifvarl temp3 1544 addvar temp3 4096 |
settspr[temp2].tsprpicnum temp3 |
settspr[temp2].tsprpal 10 |
settspr[THISACTOR].tsprpicnum temp3 |
|
ifvare picnum DUKETORSO |
ifvarg holodukeid -1 |
{ |
getactor[owner].picnum temp2 |
ifvare temp2 APLAYER |
{ |
gettspr[THISACTOR].tsprpicnum temp3 |
addvar temp3 2456 |
settspr[THISACTOR].tsprpicnum temp3 |
break |
gettspr[holodukeid].tsprpicnum temp3 |
ifvarl temp3 1544 addvar temp3 4096 |
settspr[holodukeid].tsprpicnum temp3 |
} |
} |
ifvare picnum DUKEGUN |
break |
|
case FRAMEEFFECT1 |
ifvare skin SANTA |
ifspawnedby APLAYER |
{ |
getactor[owner].picnum temp2 |
ifvare temp2 APLAYER |
{ |
gettspr[THISACTOR].tsprpicnum temp3 |
addvar temp3 2456 |
ifvarl temp3 1544 addvar temp3 4096 |
settspr[THISACTOR].tsprpicnum temp3 |
break |
} |
} |
ifvare picnum DUKELEG |
{ |
getactor[owner].picnum temp2 |
ifvare temp2 APLAYER settspr[THISACTOR].tsprpal 30 |
break |
} |
} |
|
ifvare picnum DUKETORSO |
{ |
case DUKETORSO |
case DUKEGUN |
getactor[owner].picnum temp2 |
ifvare temp2 SOBBOTWALK |
{ |
1042,7 → 1081,6 |
gettspr[THISACTOR].tsprpicnum temp3 |
addvar temp3 2456 |
settspr[THISACTOR].tsprpicnum temp3 |
break |
} |
ifvare temp2 SOBBOTFLY |
{ |
1049,35 → 1087,27 |
gettspr[THISACTOR].tsprpicnum temp3 |
addvar temp3 2456 |
settspr[THISACTOR].tsprpicnum temp3 |
break |
} |
} |
ifvare picnum DUKEGUN |
ifvare temp2 APLAYER |
{ |
getactor[owner].picnum temp2 |
ifvare temp2 SOBBOTWALK |
ifvare skin SANTA |
{ |
gettspr[THISACTOR].tsprpicnum temp3 |
addvar temp3 2456 |
settspr[THISACTOR].tsprpicnum temp3 |
break |
} |
ifvare temp2 SOBBOTFLY |
{ |
gettspr[THISACTOR].tsprpicnum temp3 |
addvar temp3 2456 |
settspr[THISACTOR].tsprpicnum temp3 |
} |
break |
} |
} |
ifvare picnum DUKELEG |
{ |
|
case DUKELEG |
getactor[owner].picnum temp2 |
ifvare temp2 SOBBOTWALK settspr[THISACTOR].tsprpal 30 |
ifvare temp2 SOBBOTFLY settspr[THISACTOR].tsprpal 30 |
ifvare temp2 APLAYER ifvare skin SANTA settspr[THISACTOR].tsprpal 30 |
break |
} |
ifvare picnum APLAYER |
endswitch |
|
ifvare picnum APLAYER // this fixes the bug with the misplaced TV screen tiles |
{ |
gettspr[THISACTOR].tsprpicnum temp |
switch temp |