Subversion Repositories nw_plus

Compare Revisions

Regard whitespace Rev 66 → Rev 65

/nw_plus/NWinter.con
9,33 → 9,37
--------------------------------------------------------------------------------
*/
 
definecheat 14 endepisode
definecheat 15 endlevel
definecheat 25 endvolume
 
include NWDefs.con
include NWUser.con
 
setgamename Duke: Nuclear Winter
 
gamevar nw_picnum 0 2
gamevar nw_temp 0 2
gamevar nw_tempb 0 2
gamevar nw_x 0 2
gamevar nw_y 0 2
gamevar nw_z 0 2
gamevar picnum 0 2
gamevar temp 0 2
gamevar tempb 0 2
gamevar x 0 2
gamevar y 0 2
gamevar z 0 2
 
gamevar nw_owner 0 2
gamevar nw_temp2 0 2
gamevar nw_temp3 0 2
// gamevar nw_temp4 0 0
// gamevar nw_ptemp 0 1
gamevar nw_holodukeid 0 1
gamevar nw_musicchange 0 1
gamevar owner 0 2
gamevar temp2 0 2
gamevar temp3 0 2
gamevar temp4 0 2
gamevar ptemp 0 1
gamevar holodukeid 0 1
gamevar musicchange 0 1
gamevar skin DUKE 132097 // do not reset flag enabled
 
gamevar LOGO_FLAGS 767 0 // default; TEN screen reenabled
 
state cutsceneambience
getactor[THISACTOR].lotag nw_temp
getactor[THISACTOR].lotag temp
 
switch nw_temp
switch temp
 
case WIND_AMBIENCE
case WIND_REPEAT
50,8 → 54,8
ends
 
onevent EVENT_LOADACTOR
getactor[THISACTOR].picnum nw_picnum
switch nw_picnum
getactor[THISACTOR].picnum picnum
switch picnum
 
case SNOWYDOORSHOCK
spritepal 30
75,7 → 79,7
break
 
case JETPACK
ifspritepal 21 setvar nw_temp 1
ifspritepal 21 setvar temp 1
spritepal 0
break
 
88,7 → 92,7
 
case XMASPRESENT
case XMASPRESENT2
getactor[THISACTOR].hitag nw_temp
getactor[THISACTOR].hitag temp
setactor[THISACTOR].hitag 0
break
 
96,12 → 100,12
endevent
 
onevent EVENT_SPAWN
getactor[THISACTOR].owner nw_owner
getactor[THISACTOR].picnum nw_picnum
getactor[THISACTOR].owner owner
getactor[THISACTOR].picnum picnum
endevent
 
onevent EVENT_EGS
getactor[THISACTOR].picnum nw_picnum
getactor[THISACTOR].picnum picnum
 
ifactor APLAYER setactor[THISACTOR].mdflags 16
ifactor DUKETORSO setactor[THISACTOR].mdflags 16
113,18 → 117,18
{
sizeat 8 8
 
setvar nw_temp3 0
randvar nw_temp3 2047
setactor[THISACTOR].ang nw_temp3
setvar temp3 0
randvar temp3 2047
setactor[THISACTOR].ang temp3
 
setvar nw_temp2 -2047
randvar nw_temp2 2047
setvar temp2 -2047
randvar temp2 2047
 
/*
setvar nw_temp3 0
ifrnd 128 addvar nw_temp3 4
ifrnd 128 addvar nw_temp3 8
setactor[THISACTOR].cstat nw_temp3
setvar temp3 0
ifrnd 128 addvar temp3 4
ifrnd 128 addvar temp3 8
setactor[THISACTOR].cstat temp3
*/
}
endevent
270,11 → 274,10
ifpinventory GET_JETPACK JETPACK_AMOUNT
ifcanseetarget
{
ifvare nw_temp 1
ifvare temp 1
{
addinventory GET_JETPACK JETPACK_NEAR_EMPTY
redefinequote 122 This jetpack is almost empty!
quote 122
quote 125
}
else
{
295,22 → 298,22
 
 
state nwbabecode
getactor[THISACTOR].cstat nw_temp
ifvarand nw_temp 1 nullop else addvar nw_temp 1
ifactor HALFBITCH { ifvarand nw_temp 128 nullop else addvar nw_temp 128 }
ifvarand nw_temp 256 nullop else addvar nw_temp 256
getactor[THISACTOR].cstat temp
ifvarand temp 1 nullop else addvar temp 1
ifactor HALFBITCH { ifvarand temp 128 nullop else addvar temp 128 }
ifvarand temp 256 nullop else addvar temp 256
 
getuserdef .lockout nw_temp2
ifvare nw_temp2 1
getuserdef .lockout temp2
ifvare temp2 1
{
ifvarand nw_temp 32768 nullop else addvar nw_temp 32768
ifvarand temp 32768 nullop else addvar temp 32768
}
else
// {
ifvarand nw_temp 32768 subvar nw_temp 32768
ifvarand temp 32768 subvar temp 32768
// }
 
setactor[THISACTOR].cstat nw_temp
setactor[THISACTOR].cstat temp
 
 
 
553,28 → 556,28
{
ifvare LEVEL 2
{
getactor[THISACTOR].sectnum nw_temp
switch nw_temp
getactor[THISACTOR].sectnum temp
switch temp
case 220 case 221
ifvarn nw_musicchange 1
ifvarn musicchange 1
{
starttrack 12 // doom
setvar nw_musicchange 1
setvar musicchange 1
}
break
case 563 case 564 case 565 case 566 case 567
ifvarn nw_musicchange 2
ifvarn musicchange 2
{
starttrack 13 // mario
setvar nw_musicchange 2
setvar musicchange 2
}
break
case 192 case 193 case 194 case 195 case 196 case 197 case 198 case 237 case 238 case 239 case 240
case 166 case 167 case 172 case 173 case 174 case 176 case 179
ifvarn nw_musicchange 0
ifvarn musicchange 0
{
starttrackvar LEVEL // level music
setvar nw_musicchange 0
setvar musicchange 0
}
break
endswitch
778,9 → 781,9
resetactioncount
}
getplayer[THISACTOR].i nw_temp
getactor[nw_temp].pal nw_temp
ifvare nw_temp 1 // if player is frozen
getplayer[THISACTOR].i temp
getactor[temp].pal temp
ifvare temp 1 // if player is frozen
ai AICOMMGET
}
else
815,9 → 818,9
break
}
getplayer[THISACTOR].i nw_temp
getactor[nw_temp].pal nw_temp
ifvare nw_temp 1 // if player is frozen
getplayer[THISACTOR].i temp
getactor[temp].pal temp
ifvare temp 1 // if player is frozen
{
sound COMM_SPIN
ai AICOMMSPINNW
844,13 → 847,13
{
ifpdistl 1280
{
setvar nw_tempb CAPTSPINNINGPLAYER
mulvar nw_tempb -1
setvar tempb CAPTSPINNINGPLAYER
mulvar tempb -1
// addphealth CAPTSPINNINGPLAYER
getplayer[THISACTOR].i nw_temp
setactor[nw_temp].htextra nw_tempb
setactor[nw_temp].htpicnum KNEE
setactor[nw_temp].htowner THISACTOR
getplayer[THISACTOR].i temp
setactor[temp].htextra tempb
setactor[temp].htpicnum KNEE
setactor[temp].htowner THISACTOR
 
globalsound DUKE_GRUNT
palfrom 32 16
1033,9 → 1036,9
{
state nwl3surprise
getplayer[THISACTOR].holoduke_on nw_holodukeid
ifvarg nw_holodukeid -1
setactor[nw_holodukeid].mdflags 16
getplayer[THISACTOR].holoduke_on holodukeid
ifvarg holodukeid -1
setactor[holodukeid].mdflags 16
// addlogvar skin
}
1047,17 → 1050,17
ifactor MONEY
{
setactor[THISACTOR].mdflags 16
// getactor[THISACTOR].owner nw_owner
switch nw_owner
// getactor[THISACTOR].owner owner
switch owner
case SNOW case SNOWFLAKE case SNOWMAKER case SNOWMAKERNOMOVE
getactor[THISACTOR].x nw_x
getactor[THISACTOR].y nw_y
getactor[THISACTOR].z nw_z
getactor[THISACTOR].x x
getactor[THISACTOR].y y
getactor[THISACTOR].z z
 
updatesectorz nw_x nw_y nw_z nw_temp
ifvarn nw_temp -1 getflorzofslope nw_temp nw_x nw_y nw_temp2 else killit
updatesectorz x y z temp
ifvarn temp -1 getflorzofslope temp x y temp2 else killit
 
ifvarvare nw_z nw_temp2 killit
ifvarvare z temp2 killit
break
endswitch
}
1066,13 → 1069,13
 
onevent EVENT_ANIMATESPRITES
 
ifvare nw_picnum DOORSHOCK
ifvare picnum DOORSHOCK
{
ifspritepal 30 settspr[THISACTOR].tsprpicnum 3656
ifvare VOLUME 1 ifvare LEVEL 2 settspr[THISACTOR].tsprpicnum 3656
break
}
ifvare nw_picnum SNOWFLAKE
ifvare picnum SNOWFLAKE
{
settspr[THISACTOR].tsprpicnum SNOW
settspr[THISACTOR].tsprxrepeat 4
1080,9 → 1083,9
break
}
/*
ifvare nw_picnum MONEY
ifvare picnum MONEY
{
switch nw_owner
switch owner
case SNOW case SNOWFLAKE case SNOWMAKER case SNOWMAKERNOMOVE
settspr[THISACTOR].tsprpicnum SNOW
break
1090,19 → 1093,19
}
*/
switch nw_picnum
switch picnum
case APLAYER
ifvare skin SANTA
{
gettspr[THISACTOR].tsprpicnum nw_temp3
ifvarg nw_temp3 1399 ifvarl nw_temp3 1544 addvar nw_temp3 4096
settspr[THISACTOR].tsprpicnum nw_temp3
gettspr[THISACTOR].tsprpicnum temp3
ifvarg temp3 1399 ifvarl temp3 1544 addvar temp3 4096
settspr[THISACTOR].tsprpicnum temp3
 
ifvarg nw_holodukeid -1
ifvarg holodukeid -1
{
gettspr[nw_holodukeid].tsprpicnum nw_temp3
ifvarg nw_temp3 1399 ifvarl nw_temp3 1544 addvar nw_temp3 4096
settspr[nw_holodukeid].tsprpicnum nw_temp3
gettspr[holodukeid].tsprpicnum temp3
ifvarg temp3 1399 ifvarl temp3 1544 addvar temp3 4096
settspr[holodukeid].tsprpicnum temp3
}
}
break
1111,53 → 1114,53
ifvare skin SANTA
ifspawnedby APLAYER
{
gettspr[THISACTOR].tsprpicnum nw_temp3
ifvarg nw_temp3 1399 ifvarl nw_temp3 1544 addvar nw_temp3 4096
settspr[THISACTOR].tsprpicnum nw_temp3
gettspr[THISACTOR].tsprpicnum temp3
ifvarg temp3 1399 ifvarl temp3 1544 addvar temp3 4096
settspr[THISACTOR].tsprpicnum temp3
}
break
case DUKETORSO
case DUKEGUN
getactor[nw_owner].picnum nw_temp2
ifvare nw_temp2 SOBBOTWALK
getactor[owner].picnum temp2
ifvare temp2 SOBBOTWALK
{
gettspr[THISACTOR].tsprpicnum nw_temp3
addvar nw_temp3 2456
settspr[THISACTOR].tsprpicnum nw_temp3
gettspr[THISACTOR].tsprpicnum temp3
addvar temp3 2456
settspr[THISACTOR].tsprpicnum temp3
}
ifvare nw_temp2 SOBBOTFLY
ifvare temp2 SOBBOTFLY
{
gettspr[THISACTOR].tsprpicnum nw_temp3
addvar nw_temp3 2456
settspr[THISACTOR].tsprpicnum nw_temp3
gettspr[THISACTOR].tsprpicnum temp3
addvar temp3 2456
settspr[THISACTOR].tsprpicnum temp3
}
ifvare nw_temp2 APLAYER
ifvare temp2 APLAYER
{
ifvare skin SANTA
{
gettspr[THISACTOR].tsprpicnum nw_temp3
addvar nw_temp3 2456
settspr[THISACTOR].tsprpicnum nw_temp3
gettspr[THISACTOR].tsprpicnum temp3
addvar temp3 2456
settspr[THISACTOR].tsprpicnum temp3
}
}
break
 
case DUKELEG
getactor[nw_owner].picnum nw_temp2
ifvare nw_temp2 SOBBOTWALK settspr[THISACTOR].tsprpal 30
ifvare nw_temp2 SOBBOTFLY settspr[THISACTOR].tsprpal 30
ifvare nw_temp2 APLAYER ifvare skin SANTA settspr[THISACTOR].tsprpal 30
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
endswitch
 
ifvare nw_picnum APLAYER // this fixes the bug with the misplaced TV screen tiles
ifvare picnum APLAYER // this fixes the bug with the misplaced TV screen tiles
{
gettspr[THISACTOR].tsprpicnum nw_temp
switch nw_temp
gettspr[THISACTOR].tsprpicnum temp
switch temp
case 1470 case 1471 case 1472 case 1473 case 1474
subvar nw_temp 5
settspr[THISACTOR].tsprpicnum nw_temp
subvar temp 5
settspr[THISACTOR].tsprpicnum temp
break
endswitch
}
1173,8 → 1176,8
ifspritepal 31 // phone ringing effect
{
/*
getplayer[THISACTOR].cursectnum nw_temp3
switch nw_temp3
getplayer[THISACTOR].cursectnum temp3
switch temp3
case 60 case 61 case 62 case 63
case 86 case 87
case 299 case 300 case 301 case 302 case 303 case 304 case 305 case 306 case 307 case 308 case 309
1196,58 → 1199,58
ifpdistl RETRIEVEDISTANCE
ifp pfacing
ifhitspace
ifvare nw_temp2 0
ifvare temp2 0
{
setvar nw_temp 0
setvar nw_temp2 1
setvar nw_temp3 0
setvar nw_tempb 0
setvar temp 0
setvar temp2 1
setvar temp3 0
setvar tempb 0
}
 
ifvare nw_temp2 1
ifvare temp2 1
{
addvar nw_temp 1
addvar temp 1
 
stopsound PHONE_RING
ifvare nw_temp 1
ifvare temp 1
sound PHONE_PICKUP
else ifvare nw_temp 30
else ifvare temp 30
{
setvar nw_tempb 0
randvar nw_tempb 3
setvar tempb 0
randvar tempb 3
 
switch nw_tempb
switch tempb
case 0
sound LOWANG1
setvar nw_temp3 57
setvar temp3 57
break
case 1
sound LOWANG2
setvar nw_temp3 124
setvar temp3 124
break
case 2
sound LOWANG3
setvar nw_temp3 121
setvar temp3 121
break
case 3
sound LOWANG4
setvar nw_temp3 156
setvar temp3 156
break
endswitch
 
addvar nw_temp3 60
setvar nw_tempb 0
addvar temp3 60
setvar tempb 0
}
else ifvarvare nw_temp nw_temp3
else ifvarvare temp temp3
{
sound PHONE_HANGUP
setvarvar nw_tempb nw_temp3
addvar nw_tempb 150
setvarvar tempb temp3
addvar tempb 150
}
else ifvarvare nw_temp nw_tempb
else ifvarvare temp tempb
{
setvar nw_temp2 0
setvar nw_temp 0
setvar temp2 0
setvar temp 0
}
}
}
1256,9 → 1259,9
useractor notenemy 3831 0
// cstat 32768
sizeat 12 13
getactor[THISACTOR].sectnum nw_temp
getplayer[THISACTOR].cursectnum nw_temp2
ifvarvare nw_temp nw_temp2
getactor[THISACTOR].sectnum temp
getplayer[THISACTOR].cursectnum temp2
ifvarvare temp temp2
{
setuserdef[THISACTOR].volume_number 1
endofgame 13
1293,8 → 1296,8
define title_zoom 32768
 
onevent EVENT_DISPLAYMENU
// getplayer[THISACTOR].gm nw_temp
// ifvarand nw_temp 4 nullop else
// getplayer[THISACTOR].gm temp
// ifvarand temp 4 nullop else
// {
rotatesprite title_x1 title_y title_zoom 0 3838 0 0 0 0 0 xdim ydim
rotatesprite title_x2 title_y title_zoom 0 3839 0 0 0 0 0 xdim ydim
/nw_plus/NWActor.con
63,11 → 63,11
{
ifpdistl 1024
{
getplayer[THISACTOR].i nw_temp
setactor[nw_temp].htextra SNOWBALLAMOUNT
setactor[nw_temp].htpicnum SNOWBALL
// getactor[THISACTOR].owner nw_temp2
setactor[nw_temp].htowner nw_owner
getplayer[THISACTOR].i temp
setactor[temp].htextra SNOWBALLAMOUNT
setactor[temp].htpicnum SNOWBALL
// getactor[THISACTOR].owner temp2
setactor[temp].htowner owner
// addphealth SNOWBALLAMOUNT
2385,7 → 2385,7
ifcanseetarget
{
sound RIP_PAPER
ifvarl nw_temp 1
ifvarl temp 1
{
ifrnd 128
spawn SHIELD
2393,7 → 2393,7
spawn SIXPAK
}
else
espawnvar nw_temp // spawnvar // spawns the lotag, collected during EVENT_LOADACTOR
espawnvar temp // spawnvar // spawns the lotag, collected during EVENT_LOADACTOR
killit
}
ends
2406,7 → 2406,7
ifcanseetarget
{
sound RIP_PAPER
ifvarl nw_temp 1
ifvarl temp 1
{
ifrnd 128
spawn CHAINGUNSPRITE
2414,7 → 2414,7
spawn SHOTGUNSPRITE
}
else
espawnvar nw_temp // spawnvar // spawns the lotag, collected during EVENT_LOADACTOR
espawnvar temp // spawnvar // spawns the lotag, collected during EVENT_LOADACTOR
killit
}
ends
/nw_plus/NWUser.con
19,6 → 19,7
 
define JETPACK_NEAR_EMPTY 160
 
definequote 125 This jetpack is almost empty!
 
definevolumename 0 Nuclear Winter Demo
definevolumename 1 Nuclear Winter
/nw_plus/NWSnow.con
279,52 → 279,52
useractor notenemy SNOW 0
sizeat 4 4
 
addvar nw_temp2 16
ifvarg nw_temp2 2047 subvar nw_temp2 4095
setvarvar nw_temp3 nw_temp2
sin nw_temp3 nw_temp3
shiftvarr nw_temp3 5
addvar temp2 16
ifvarg temp2 2047 subvar temp2 4095
setvarvar temp3 temp2
sin temp3 temp3
shiftvarr temp3 5
 
/*
getactor[THISACTOR].x nw_x
getactor[THISACTOR].y nw_y
getactor[THISACTOR].z nw_z
getactor[THISACTOR].x x
getactor[THISACTOR].y y
getactor[THISACTOR].z z
 
updatesectorz nw_x nw_y nw_z nw_temp
getactor[THISACTOR].zvel nw_z
ifvare sector[nw_temp].lotag 2
updatesectorz x y z temp
getactor[THISACTOR].zvel z
ifvare sector[temp].lotag 2
{
ifvarl nw_z 64
ifvarl z 64
{
setvar nw_tempb GRAVITATIONALCONSTANT
shiftvarr nw_tempb 5
addvarvar nw_tempb temp4
addvarvar nw_z nw_tempb
setvar tempb GRAVITATIONALCONSTANT
shiftvarr tempb 5
addvarvar tempb temp4
addvarvar z tempb
}
}
else
{
ifvarl nw_z 144
ifvarl z 144
{
setvar nw_tempb GRAVITATIONALCONSTANT
shiftvarr nw_tempb 5
addvarvar nw_tempb temp4
addvarvar nw_z nw_tempb
setvar tempb GRAVITATIONALCONSTANT
shiftvarr tempb 5
addvarvar tempb temp4
addvarvar z tempb
}
}
*/
 
movesprite THISACTOR nw_temp3 0 256 CLIPMASK0 RETURN
movesprite THISACTOR temp3 0 256 CLIPMASK0 RETURN
ifvarn RETURN 0 killit
 
 
getactor[THISACTOR].x nw_x
getactor[THISACTOR].y nw_y
getactor[THISACTOR].z nw_z
getactor[THISACTOR].x x
getactor[THISACTOR].y y
getactor[THISACTOR].z z
 
updatesectorz nw_x nw_y nw_z nw_temp
ifvarn nw_temp -1 getflorzofslope nw_temp nw_x nw_y nw_temp2 else killit
updatesectorz x y z temp
ifvarn temp -1 getflorzofslope temp x y temp2 else killit
 
ifvarvare nw_z nw_temp2 killit
ifvarvare z temp2 killit
 
enda
/nw_plus/NWDPCode.con
184,9 → 184,9
{
ifvarl xydist 1280
{
setvar nw_temp CAPTSPINNINGPLAYER
ifvarand monstflags 8 mulvar nw_temp -2 else mulvar nw_temp -1
setactor[target].htextra nw_temp
setvar temp CAPTSPINNINGPLAYER
ifvarand monstflags 8 mulvar temp -2 else mulvar temp -1
setactor[target].htextra temp
setactor[target].htpicnum RPG
setactor[target].htowner THISACTOR
//sound DUKE_GRUNT
272,10 → 272,10
ifvarl RETURN 16384
ifvarg RETURN -1 // hit a sprite
{
getactor[RETURN].picnum nw_picnum
getactorvar[RETURN].monstatus nw_temp
ifvare nw_picnum APLAYER sound SQUISHED else
ifvare nw_temp 1 sound SQUISHED
getactor[RETURN].picnum picnum
getactorvar[RETURN].monstatus temp
ifvare picnum APLAYER sound SQUISHED else
ifvare temp 1 sound SQUISHED
setactor[RETURN].htpicnum RPG
setactor[RETURN].htextra 100
setactor[RETURN].htowner THISACTOR
424,8 → 424,8
ifai AICOMMSHOOT
{
ifvare target -1 ifvarn playerally 0 { ai AICOMMGET break }
setvar nw_temp 0
ifvarn target -1 setvar nw_temp 1
setvar temp 0
ifvarn target -1 setvar temp 1
ifvarand monstflags 2048
ifvare playerally 0
{
434,10 → 434,10
ai AICOMMFRISBEE
break
}
else ifvarg targetlock 0 setvar nw_temp 1
else ifvarg targetlock 0 setvar temp 1
} else
ifvarg canshootplayer 0 setvar nw_temp 1
ifvare nw_temp 1
ifvarg canshootplayer 0 setvar temp 1
ifvare temp 1
{
ifcount 24
ifrnd 16
489,12 → 489,12
 
ifvarg canseeplayer 0
{
setvar nw_temp 0
ifp phigher setvar nw_temp 1
setvar temp 0
ifp phigher setvar temp 1
ifvarn target -1
ifvarvarg z mz setvar nw_temp 1
ifvarvarg z mz setvar temp 1
ifvare nw_temp 1
ifvare temp 1
move COMMGETUPVELS getv geth faceplayer
else
move COMMGETVELS getv geth faceplayer