Added brightmaps. Added environment map shader. Began working on Biorifle.
BIN
brightmaps/ASMD_t.png
Normal file
|
After Width: | Height: | Size: 802 B |
BIN
brightmaps/ASMD_t1.png
Normal file
|
After Width: | Height: | Size: 718 B |
BIN
brightmaps/ASMD_t3.png
Normal file
|
After Width: | Height: | Size: 2.9 KiB |
BIN
brightmaps/ASMD_t4.png
Normal file
|
After Width: | Height: | Size: 1.3 KiB |
BIN
brightmaps/JBRifle2.png
Normal file
|
After Width: | Height: | Size: 819 B |
BIN
brightmaps/JBRifle21.png
Normal file
|
After Width: | Height: | Size: 601 B |
BIN
brightmaps/JBRifle22.png
Normal file
|
After Width: | Height: | Size: 1.3 KiB |
BIN
brightmaps/JBRifle23.png
Normal file
|
After Width: | Height: | Size: 733 B |
BIN
brightmaps/JBRifle24.png
Normal file
|
After Width: | Height: | Size: 1.9 KiB |
BIN
brightmaps/JBammo1.png
Normal file
|
After Width: | Height: | Size: 233 B |
BIN
brightmaps/JShockCore.png
Normal file
|
After Width: | Height: | Size: 1.7 KiB |
BIN
brightmaps/Jwarhead2.png
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
BIN
brightmaps/Jwarhead4.png
Normal file
|
After Width: | Height: | Size: 1.6 KiB |
BIN
brightmaps/Jwhpick1.png
Normal file
|
After Width: | Height: | Size: 1.3 KiB |
60
gldefs.txt
Normal file
|
|
@ -0,0 +1,60 @@
|
|||
HardwareShader Texture "models/Jgreen.png"
|
||||
{
|
||||
Shader "shaders/glsl/MeshEnviroMap.fp"
|
||||
}
|
||||
Brightmap Texture "models/JBRifle2.png"
|
||||
{
|
||||
Map "brightmaps/JBRifle2.png"
|
||||
}
|
||||
Brightmap Texture "models/JBRifle21.png"
|
||||
{
|
||||
Map "brightmaps/JBRifle21.png"
|
||||
}
|
||||
Brightmap Texture "models/JBRifle22.png"
|
||||
{
|
||||
Map "brightmaps/JBRifle22.png"
|
||||
}
|
||||
Brightmap Texture "models/JBRifle23.png"
|
||||
{
|
||||
Map "brightmaps/JBRifle23.png"
|
||||
}
|
||||
Brightmap Texture "models/JBRifle24.png"
|
||||
{
|
||||
Map "brightmaps/JBRifle24.png"
|
||||
}
|
||||
Brightmap Texture "models/JBammo1.png"
|
||||
{
|
||||
Map "brightmaps/JBammo1.png"
|
||||
}
|
||||
Brightmap Texture "models/ASMD_t.png"
|
||||
{
|
||||
Map "brightmaps/ASMD_t.png"
|
||||
}
|
||||
Brightmap Texture "models/ASMD_t1.png"
|
||||
{
|
||||
Map "brightmaps/ASMD_t1.png"
|
||||
}
|
||||
Brightmap Texture "models/ASMD_t3.png"
|
||||
{
|
||||
Map "brightmaps/ASMD_t3.png"
|
||||
}
|
||||
Brightmap Texture "models/ASMD_t4.png"
|
||||
{
|
||||
Map "brightmaps/ASMD_t4.png"
|
||||
}
|
||||
Brightmap Texture "models/JShockCore.png"
|
||||
{
|
||||
Map "brightmaps/JShockCore.png"
|
||||
}
|
||||
Brightmap Texture "models/Jwarhead2.png"
|
||||
{
|
||||
Map "brightmaps/Jwarhead2.png"
|
||||
}
|
||||
Brightmap Texture "models/Jwarhead4.png"
|
||||
{
|
||||
Map "brightmaps/Jwarhead4.png"
|
||||
}
|
||||
Brightmap Texture "models/Jwhpick1.png"
|
||||
{
|
||||
Map "brightmaps/Jwhpick1.png"
|
||||
}
|
||||
|
Before Width: | Height: | Size: 1.6 KiB |
|
Before Width: | Height: | Size: 1.9 KiB |
226
modeldef.txt
|
|
@ -1,7 +1,229 @@
|
|||
//=============================================================================
|
||||
// GES BIORIFLE
|
||||
//=============================================================================
|
||||
|
||||
Model "BioAmmo"
|
||||
{
|
||||
Path "models"
|
||||
Model 0 "BioAmmoM_d.3d"
|
||||
Skin 0 "Jbammo1.png"
|
||||
Scale -0.08 0.08 0.08
|
||||
ZOffset 4
|
||||
|
||||
FrameIndex BIOA A 0 0
|
||||
}
|
||||
|
||||
Model "BioGel"
|
||||
{
|
||||
Path "models"
|
||||
Model 0 "BioGelm_d.3d"
|
||||
Skin 0 "Jgreen.png"
|
||||
Scale 0.08 0.08 0.08
|
||||
RollOffset 90
|
||||
DONTCULLBACKFACES
|
||||
USEACTORPITCH
|
||||
USEACTORROLL
|
||||
|
||||
// Flying
|
||||
FrameIndex GELF A 0 0
|
||||
FrameIndex GELF B 0 1
|
||||
FrameIndex GELF C 0 2
|
||||
FrameIndex GELF D 0 3
|
||||
FrameIndex GELF E 0 4
|
||||
FrameIndex GELF F 0 5
|
||||
FrameIndex GELF G 0 6
|
||||
FrameIndex GELF H 0 7
|
||||
FrameIndex GELF I 0 8
|
||||
FrameIndex GELF J 0 9
|
||||
FrameIndex GELF K 0 10
|
||||
FrameIndex GELF L 0 11
|
||||
FrameIndex GELF M 0 12
|
||||
// Hit
|
||||
FrameIndex GELH A 0 14
|
||||
FrameIndex GELH B 0 15
|
||||
FrameIndex GELH C 0 16
|
||||
FrameIndex GELH D 0 17
|
||||
FrameIndex GELH E 0 18
|
||||
FrameIndex GELH F 0 19
|
||||
FrameIndex GELH G 0 20
|
||||
FrameIndex GELH H 0 21
|
||||
FrameIndex GELH I 0 22
|
||||
FrameIndex GELH J 0 23
|
||||
// Drip
|
||||
FrameIndex GELD A 0 24
|
||||
FrameIndex GELD B 0 25
|
||||
FrameIndex GELD C 0 26
|
||||
FrameIndex GELD D 0 27
|
||||
FrameIndex GELD E 0 28
|
||||
FrameIndex GELD F 0 29
|
||||
FrameIndex GELD G 0 30
|
||||
FrameIndex GELD H 0 31
|
||||
FrameIndex GELD I 0 32
|
||||
FrameIndex GELD J 0 33
|
||||
FrameIndex GELD K 0 34
|
||||
FrameIndex GELD L 0 35
|
||||
FrameIndex GELD M 0 36
|
||||
// Slide
|
||||
FrameIndex GELS A 0 37
|
||||
FrameIndex GELS B 0 38
|
||||
FrameIndex GELS C 0 39
|
||||
FrameIndex GELS D 0 40
|
||||
FrameIndex GELS E 0 41
|
||||
FrameIndex GELS F 0 42
|
||||
FrameIndex GELS G 0 43
|
||||
// Shrivel
|
||||
FrameIndex GELX A 0 44
|
||||
FrameIndex GELX B 0 45
|
||||
FrameIndex GELX C 0 46
|
||||
FrameIndex GELX D 0 47
|
||||
FrameIndex GELX E 0 48
|
||||
FrameIndex GELX F 0 49
|
||||
FrameIndex GELX G 0 50
|
||||
FrameIndex GELX H 0 51
|
||||
FrameIndex GELX I 0 52
|
||||
FrameIndex GELX J 0 53
|
||||
FrameIndex GELX K 0 54
|
||||
FrameIndex GELX L 0 55
|
||||
}
|
||||
|
||||
Model "BioRifle"
|
||||
{
|
||||
Path "models"
|
||||
Model 1 "BRifle2Pick_d.3d"
|
||||
Skin 1 "JBRifle2.png"
|
||||
Scale -0.1 0.1 0.1
|
||||
PitchOffset 90
|
||||
ZOffset 12
|
||||
ROTATING
|
||||
|
||||
FrameIndex BIOP A 1 0
|
||||
}
|
||||
|
||||
Model "BioRifle"
|
||||
{
|
||||
Path "models"
|
||||
Model 1 "BRifle2Pick_d.3d"
|
||||
Skin 1 "JBRifle2.png"
|
||||
Scale -0.1 0.1 0.1
|
||||
PitchOffset 90
|
||||
ZOffset 12
|
||||
|
||||
FrameIndex BIOP B 1 0
|
||||
}
|
||||
|
||||
Model "BioRifle"
|
||||
{
|
||||
Path "models"
|
||||
Model 0 "BRifle2_d.3d"
|
||||
SurfaceSkin 0 0 "JBRifle21.png"
|
||||
SurfaceSkin 0 1 "JBRifle22.png"
|
||||
SurfaceSkin 0 2 "JBRifle23.png"
|
||||
SurfaceSkin 0 3 "JBRifle24.png"
|
||||
RollOffset -8.4375
|
||||
PitchOffset 94.21875
|
||||
Scale 0.125 0.06 0.125
|
||||
Offset 9.8 -17.6 -10.4
|
||||
|
||||
// select
|
||||
FrameIndex BIOS A 0 0
|
||||
FrameIndex BIOS B 0 1
|
||||
FrameIndex BIOS C 0 2
|
||||
FrameIndex BIOS D 0 3
|
||||
FrameIndex BIOS E 0 4
|
||||
FrameIndex BIOS F 0 5
|
||||
FrameIndex BIOS G 0 6
|
||||
FrameIndex BIOS H 0 7
|
||||
FrameIndex BIOS I 0 8
|
||||
FrameIndex BIOS J 0 9
|
||||
FrameIndex BIOS K 0 10
|
||||
FrameIndex BIOS L 0 11
|
||||
FrameIndex BIOS M 0 12
|
||||
FrameIndex BIOS N 0 13
|
||||
FrameIndex BIOS O 0 14
|
||||
FrameIndex BIOS P 0 15
|
||||
FrameIndex BIOS Q 0 16
|
||||
FrameIndex BIOS R 0 17
|
||||
FrameIndex BIOS S 0 18
|
||||
FrameIndex BIOS T 0 19
|
||||
FrameIndex BIOS U 0 20
|
||||
FrameIndex BIOS V 0 21
|
||||
// idle
|
||||
FrameIndex BIOI A 0 22
|
||||
// charging
|
||||
FrameIndex BIOC A 0 41
|
||||
FrameIndex BIOC B 0 42
|
||||
FrameIndex BIOC C 0 43
|
||||
FrameIndex BIOC D 0 44
|
||||
FrameIndex BIOC E 0 45
|
||||
FrameIndex BIOC F 0 46
|
||||
FrameIndex BIOC G 0 47
|
||||
FrameIndex BIOC H 0 48
|
||||
FrameIndex BIOC I 0 49
|
||||
FrameIndex BIOC J 0 50
|
||||
FrameIndex BIOC K 0 51
|
||||
FrameIndex BIOC L 0 52
|
||||
FrameIndex BIOC M 0 53
|
||||
FrameIndex BIOC N 0 54
|
||||
FrameIndex BIOC O 0 55
|
||||
FrameIndex BIOC P 0 56
|
||||
FrameIndex BIOC Q 0 57
|
||||
FrameIndex BIOC R 0 58
|
||||
FrameIndex BIOC S 0 59
|
||||
FrameIndex BIOC T 0 60
|
||||
FrameIndex BIOC U 0 61
|
||||
FrameIndex BIOC V 0 62
|
||||
FrameIndex BIOC W 0 63
|
||||
FrameIndex BIOC X 0 64
|
||||
FrameIndex BIOC Y 0 65
|
||||
FrameIndex BIOC Z 0 66
|
||||
FrameIndex BIC2 A 0 67
|
||||
FrameIndex BIC2 B 0 68
|
||||
FrameIndex BIC2 C 0 69
|
||||
FrameIndex BIC2 D 0 70
|
||||
FrameIndex BIC2 E 0 71
|
||||
// full
|
||||
FrameIndex BIOM A 0 70
|
||||
// empty
|
||||
FrameIndex BIOE A 0 71
|
||||
// fire
|
||||
FrameIndex BIOF A 0 72
|
||||
FrameIndex BIOF B 0 73
|
||||
FrameIndex BIOF C 0 74
|
||||
FrameIndex BIOF D 0 75
|
||||
FrameIndex BIOF E 0 76
|
||||
FrameIndex BIOF F 0 77
|
||||
FrameIndex BIOF G 0 78
|
||||
FrameIndex BIOF H 0 79
|
||||
FrameIndex BIOF I 0 80
|
||||
// deselect
|
||||
FrameIndex BIOD A 0 80
|
||||
FrameIndex BIOD B 0 81
|
||||
FrameIndex BIOD C 0 82
|
||||
FrameIndex BIOD D 0 83
|
||||
FrameIndex BIOD E 0 84
|
||||
FrameIndex BIOD F 0 85
|
||||
FrameIndex BIOD G 0 86
|
||||
FrameIndex BIOD H 0 87
|
||||
FrameIndex BIOD I 0 88
|
||||
FrameIndex BIOD J 0 89
|
||||
}
|
||||
|
||||
//=============================================================================
|
||||
// SHOCK RIFLE
|
||||
//=============================================================================
|
||||
|
||||
Model "ShockAmmo"
|
||||
{
|
||||
Path "models"
|
||||
Model 0 "ShockCoreM_d.3d"
|
||||
Skin 0 "JShockCore.png"
|
||||
PitchOffset 90
|
||||
Scale -0.11 0.11 0.11
|
||||
ZOffset 12
|
||||
|
||||
FrameIndex SHOA A 0 0
|
||||
}
|
||||
|
||||
Model "ShockRifleWave"
|
||||
{
|
||||
Path "models"
|
||||
|
|
@ -21,7 +243,7 @@ Model "ShockBeamRing"
|
|||
DONTCULLBACKFACES
|
||||
USEACTORPITCH
|
||||
USEACTORROLL
|
||||
Scale 1.0 0.9 1.0
|
||||
Scale 1.2 1.0 1.2
|
||||
|
||||
FrameIndex SRNG A 0 0
|
||||
FrameIndex SRNG B 0 1
|
||||
|
|
@ -42,7 +264,7 @@ Model "ShockBlastRing"
|
|||
DONTCULLBACKFACES
|
||||
USEACTORPITCH
|
||||
USEACTORROLL
|
||||
Scale 1.0 0.9 1.0
|
||||
Scale 1.2 1.0 1.2
|
||||
|
||||
FrameIndex SRNG A 0 0
|
||||
FrameIndex SRNG B 0 1
|
||||
|
|
|
|||
BIN
models/BRifle2Pick_a.3d
Normal file
BIN
models/BRifle2Pick_d.3d
Normal file
BIN
models/BRifle2_a.3d
Normal file
BIN
models/BRifle2_d.3d
Normal file
BIN
models/BioAmmoM_a.3d
Normal file
BIN
models/BioAmmoM_d.3d
Normal file
BIN
models/BioGelm_a.3d
Normal file
BIN
models/BioGelm_d.3d
Normal file
BIN
models/JBRifle2.png
Normal file
|
After Width: | Height: | Size: 15 KiB |
BIN
models/JBRifle21.png
Normal file
|
After Width: | Height: | Size: 42 KiB |
BIN
models/JBRifle22.png
Normal file
|
After Width: | Height: | Size: 40 KiB |
BIN
models/JBRifle23.png
Normal file
|
After Width: | Height: | Size: 44 KiB |
BIN
models/JBRifle24.png
Normal file
|
After Width: | Height: | Size: 50 KiB |
BIN
models/JBammo1.png
Normal file
|
After Width: | Height: | Size: 15 KiB |
BIN
models/Jgreen.png
Normal file
|
After Width: | Height: | Size: 16 KiB |
|
|
@ -12,7 +12,7 @@ Currently implemented:
|
|||
|
||||
In progress:
|
||||
|
||||
- N/A
|
||||
- GES Biorifle (slot 3)
|
||||
|
||||
To be done:
|
||||
|
||||
|
|
@ -21,7 +21,6 @@ To be done:
|
|||
- Translocator (slot 1)
|
||||
- Enforcer (slot 2)
|
||||
- Dual Enforcers (slot 2)
|
||||
- GES Biorifle (slot 3)
|
||||
- Pulsegun (slot 5)
|
||||
- Ripper (slot 6)
|
||||
- Minigun (slot 7)
|
||||
|
|
|
|||
7
shaders/glsl/MeshEnviroMap.fp
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
// imitation of the Unreal Engine 1.x bMeshEnviroMap effect, not 1:1 but gets close
|
||||
vec4 Process( vec4 color )
|
||||
{
|
||||
vec3 eyedir = normalize(uCameraPos.xyz-pixelpos.xyz);
|
||||
vec3 norm = reflect(eyedir,normalize(vWorldNormal.xyz));
|
||||
return getTexel(norm.xz*0.5)*color;
|
||||
}
|
||||
11
sndinfo.txt
|
|
@ -46,3 +46,14 @@ $pitchshift warhead/explode 0
|
|||
$pitchshift warhead/fly 0
|
||||
$pitchshift warhead/select 0
|
||||
$pitchshift warhead/fire 0
|
||||
|
||||
ges/hit gelhit
|
||||
ges/select gelselec
|
||||
ges/fire gelshot
|
||||
ges/charge bioaltrep
|
||||
ges/explode explg02
|
||||
$pitchshift ges/hit 0
|
||||
$pitchshift ges/select 0
|
||||
$pitchshift ges/fire 0
|
||||
$pitchshift ges/charge 0
|
||||
$pitchshift ges/explode 0
|
||||
|
|
|
|||
BIN
sounds/BioAltRp.wav
Normal file
BIN
sounds/Explg02.wav
Normal file
BIN
sounds/GelHit.wav
Normal file
BIN
sounds/GelSelec.wav
Normal file
BIN
sounds/GelShot.wav
Normal file
131
textures.ges
Normal file
|
|
@ -0,0 +1,131 @@
|
|||
Sprite "BIOAA0",1,1{}
|
||||
Sprite "GELFA0",1,1{}
|
||||
Sprite "GELFB0",1,1{}
|
||||
Sprite "GELFC0",1,1{}
|
||||
Sprite "GELFD0",1,1{}
|
||||
Sprite "GELFE0",1,1{}
|
||||
Sprite "GELFF0",1,1{}
|
||||
Sprite "GELFG0",1,1{}
|
||||
Sprite "GELFH0",1,1{}
|
||||
Sprite "GELFI0",1,1{}
|
||||
Sprite "GELFJ0",1,1{}
|
||||
Sprite "GELFK0",1,1{}
|
||||
Sprite "GELFL0",1,1{}
|
||||
Sprite "GELFM0",1,1{}
|
||||
Sprite "GELHA0",1,1{}
|
||||
Sprite "GELHB0",1,1{}
|
||||
Sprite "GELHC0",1,1{}
|
||||
Sprite "GELHD0",1,1{}
|
||||
Sprite "GELHE0",1,1{}
|
||||
Sprite "GELHF0",1,1{}
|
||||
Sprite "GELHG0",1,1{}
|
||||
Sprite "GELHH0",1,1{}
|
||||
Sprite "GELHI0",1,1{}
|
||||
Sprite "GELHJ0",1,1{}
|
||||
Sprite "GELDA0",1,1{}
|
||||
Sprite "GELDB0",1,1{}
|
||||
Sprite "GELDC0",1,1{}
|
||||
Sprite "GELDD0",1,1{}
|
||||
Sprite "GELDE0",1,1{}
|
||||
Sprite "GELDF0",1,1{}
|
||||
Sprite "GELDG0",1,1{}
|
||||
Sprite "GELDH0",1,1{}
|
||||
Sprite "GELDI0",1,1{}
|
||||
Sprite "GELDJ0",1,1{}
|
||||
Sprite "GELDK0",1,1{}
|
||||
Sprite "GELDL0",1,1{}
|
||||
Sprite "GELDM0",1,1{}
|
||||
Sprite "GELSA0",1,1{}
|
||||
Sprite "GELSB0",1,1{}
|
||||
Sprite "GELSC0",1,1{}
|
||||
Sprite "GELSD0",1,1{}
|
||||
Sprite "GELSE0",1,1{}
|
||||
Sprite "GELSF0",1,1{}
|
||||
Sprite "GELSG0",1,1{}
|
||||
Sprite "GELXA0",1,1{}
|
||||
Sprite "GELXB0",1,1{}
|
||||
Sprite "GELXC0",1,1{}
|
||||
Sprite "GELXD0",1,1{}
|
||||
Sprite "GELXE0",1,1{}
|
||||
Sprite "GELXF0",1,1{}
|
||||
Sprite "GELXG0",1,1{}
|
||||
Sprite "GELXH0",1,1{}
|
||||
Sprite "GELXI0",1,1{}
|
||||
Sprite "GELXJ0",1,1{}
|
||||
Sprite "GELXK0",1,1{}
|
||||
Sprite "GELXL0",1,1{}
|
||||
Sprite "BIOSA0",1,1{}
|
||||
Sprite "BIOSB0",1,1{}
|
||||
Sprite "BIOSC0",1,1{}
|
||||
Sprite "BIOSD0",1,1{}
|
||||
Sprite "BIOSE0",1,1{}
|
||||
Sprite "BIOSF0",1,1{}
|
||||
Sprite "BIOSG0",1,1{}
|
||||
Sprite "BIOSH0",1,1{}
|
||||
Sprite "BIOSI0",1,1{}
|
||||
Sprite "BIOSJ0",1,1{}
|
||||
Sprite "BIOSK0",1,1{}
|
||||
Sprite "BIOSL0",1,1{}
|
||||
Sprite "BIOSM0",1,1{}
|
||||
Sprite "BIOSN0",1,1{}
|
||||
Sprite "BIOSO0",1,1{}
|
||||
Sprite "BIOSP0",1,1{}
|
||||
Sprite "BIOSQ0",1,1{}
|
||||
Sprite "BIOSR0",1,1{}
|
||||
Sprite "BIOSS0",1,1{}
|
||||
Sprite "BIOST0",1,1{}
|
||||
Sprite "BIOSU0",1,1{}
|
||||
Sprite "BIOSV0",1,1{}
|
||||
Sprite "BIOIA0",1,1{}
|
||||
Sprite "BIOCA0",1,1{}
|
||||
Sprite "BIOCB0",1,1{}
|
||||
Sprite "BIOCC0",1,1{}
|
||||
Sprite "BIOCD0",1,1{}
|
||||
Sprite "BIOCE0",1,1{}
|
||||
Sprite "BIOCF0",1,1{}
|
||||
Sprite "BIOCG0",1,1{}
|
||||
Sprite "BIOCH0",1,1{}
|
||||
Sprite "BIOCI0",1,1{}
|
||||
Sprite "BIOCJ0",1,1{}
|
||||
Sprite "BIOCK0",1,1{}
|
||||
Sprite "BIOCL0",1,1{}
|
||||
Sprite "BIOCM0",1,1{}
|
||||
Sprite "BIOCN0",1,1{}
|
||||
Sprite "BIOCO0",1,1{}
|
||||
Sprite "BIOCP0",1,1{}
|
||||
Sprite "BIOCQ0",1,1{}
|
||||
Sprite "BIOCR0",1,1{}
|
||||
Sprite "BIOCS0",1,1{}
|
||||
Sprite "BIOCT0",1,1{}
|
||||
Sprite "BIOCU0",1,1{}
|
||||
Sprite "BIOCV0",1,1{}
|
||||
Sprite "BIOCW0",1,1{}
|
||||
Sprite "BIOCX0",1,1{}
|
||||
Sprite "BIOCY0",1,1{}
|
||||
Sprite "BIOCZ0",1,1{}
|
||||
Sprite "BIC2A0",1,1{}
|
||||
Sprite "BIC2B0",1,1{}
|
||||
Sprite "BIC2C0",1,1{}
|
||||
Sprite "BIC2D0",1,1{}
|
||||
Sprite "BIC2E0",1,1{}
|
||||
Sprite "BIOMA0",1,1{}
|
||||
Sprite "BIOEA0",1,1{}
|
||||
Sprite "BIOFA0",1,1{}
|
||||
Sprite "BIOFB0",1,1{}
|
||||
Sprite "BIOFC0",1,1{}
|
||||
Sprite "BIOFD0",1,1{}
|
||||
Sprite "BIOFE0",1,1{}
|
||||
Sprite "BIOFF0",1,1{}
|
||||
Sprite "BIOFG0",1,1{}
|
||||
Sprite "BIOFH0",1,1{}
|
||||
Sprite "BIOFI0",1,1{}
|
||||
Sprite "BIODA0",1,1{}
|
||||
Sprite "BIODB0",1,1{}
|
||||
Sprite "BIODC0",1,1{}
|
||||
Sprite "BIODD0",1,1{}
|
||||
Sprite "BIODE0",1,1{}
|
||||
Sprite "BIODF0",1,1{}
|
||||
Sprite "BIODG0",1,1{}
|
||||
Sprite "BIODH0",1,1{}
|
||||
Sprite "BIODI0",1,1{}
|
||||
Sprite "BIODJ0",1,1{}
|
||||
1
textures.misc
Normal file
|
|
@ -0,0 +1 @@
|
|||
Sprite "BLOBA0",1,1{}
|
||||
|
|
@ -1,3 +1,4 @@
|
|||
Sprite "SHOAA0",1,1{}
|
||||
Sprite "SWAVA0",1,1{}
|
||||
Sprite "SWAVB0",1,1{}
|
||||
Sprite "SRNGA0",1,1{}
|
||||
|
|
|
|||
BIN
textures/-noflat-.png
Normal file
|
After Width: | Height: | Size: 22 KiB |
|
|
@ -3,6 +3,7 @@ version "3.3"
|
|||
#include "zscript/mk_matrix.zsc"
|
||||
#include "zscript/mk_coordutil.zsc"
|
||||
#include "zscript/utcommon.zsc"
|
||||
#include "zscript/biorifle.zsc"
|
||||
#include "zscript/shockrifle.zsc"
|
||||
#include "zscript/flakcannon.zsc"
|
||||
#include "zscript/warheadlauncher.zsc"
|
||||
|
|
|
|||
233
zscript/biorifle.zsc
Normal file
|
|
@ -0,0 +1,233 @@
|
|||
Class BioAmmo : Ammo
|
||||
{
|
||||
Default
|
||||
{
|
||||
Tag "Biosludge Ammo";
|
||||
Inventory.PickupMessage "You picked up the Biosludge Ammo.";
|
||||
Inventory.PickupSound "ut/ammo";
|
||||
Inventory.Amount 25;
|
||||
Inventory.MaxAmount 100;
|
||||
Ammo.BackpackAmount 50;
|
||||
Ammo.BackpackMaxAmount 200;
|
||||
Ammo.DropAmount 25;
|
||||
}
|
||||
States
|
||||
{
|
||||
Spawn:
|
||||
BIOA A -1;
|
||||
Stop;
|
||||
}
|
||||
}
|
||||
|
||||
Class BioHitbox : Actor
|
||||
{
|
||||
}
|
||||
|
||||
Class BioLight : DynamicLight
|
||||
{
|
||||
}
|
||||
|
||||
Class BioGel : Actor
|
||||
{
|
||||
Actor l, b;
|
||||
enum EHitType
|
||||
{
|
||||
HIT_NONE,
|
||||
HIT_WALL,
|
||||
HIT_CEILING,
|
||||
HIT_FLOOR
|
||||
};
|
||||
int hittype;
|
||||
int deadtimer;
|
||||
Line atline;
|
||||
int atside;
|
||||
|
||||
override void PostBeginPlay()
|
||||
{
|
||||
Super.PostBeginPlay();
|
||||
vel.z += 6;
|
||||
deadtimer = -1;
|
||||
}
|
||||
action void A_SetToSlope( double dang, bool ceil = false )
|
||||
{
|
||||
vector3 fnormal;
|
||||
if ( ceil ) fnormal = invoker.CurSector.floorplane.Normal;
|
||||
else fnormal = invoker.CurSector.ceilingplane.Normal;
|
||||
vector2 fnormalp1 = ((fnormal.x != 0) || (fnormal.y != 0))?(fnormal.x,fnormal.y).Unit():(0,0);
|
||||
vector2 fnormalp2 = ((fnormal.x,fnormal.y).Length(),fnormal.z);
|
||||
double fang = atan2(fnormalp1.y,fnormalp1.x); // floor angle (not pitch!)
|
||||
double fpitch = atan2(fnormalp2.x,fnormalp2.y); // floor pitch
|
||||
double ddiff1 = cos(fang-(dang-90));
|
||||
double ddiff2 = cos(fang-dang);
|
||||
invoker.pitch = -fpitch*ddiff2;
|
||||
invoker.roll = fpitch*ddiff1;
|
||||
invoker.angle = dang;
|
||||
}
|
||||
// align self to what surface was hit, currently does not support 3d floors + slopes properly
|
||||
virtual void AlignSelf()
|
||||
{
|
||||
Vector3 normal;
|
||||
FLineTraceData d;
|
||||
A_NoGravity();
|
||||
A_PlaySound("ges/hit");
|
||||
A_SetSize(0.1,0);
|
||||
if ( BlockingLine )
|
||||
{
|
||||
atline = BlockingLine;
|
||||
normal = (-BlockingLine.delta.y,BlockingLine.delta.x,0).unit();
|
||||
atside = 1;
|
||||
if ( !BlockingLine.sidedef[1] || (CurSector == BlockingLine.frontsector) )
|
||||
{
|
||||
atside = 0;
|
||||
normal *= -1;
|
||||
}
|
||||
angle = atan2(normal.y,normal.x);
|
||||
pitch = 0;
|
||||
roll = 0;
|
||||
LineTrace(angle+180,8,0,data:d);
|
||||
SetOrigin(d.HitLocation+normal*0.5,false);
|
||||
hittype = HIT_WALL;
|
||||
}
|
||||
else if ( pos.z <= floorz+4 )
|
||||
{
|
||||
normal = cursector.floorplane.Normal;
|
||||
pitch = asin(-normal.z);
|
||||
angle = atan2(normal.y,normal.x);
|
||||
roll = FRandom[GES](0,360);
|
||||
SetOrigin((pos.x,pos.y,floorz)+normal*0.5,false);
|
||||
hittype = HIT_FLOOR;
|
||||
}
|
||||
else if ( pos.z >= ceilingz-8 )
|
||||
{
|
||||
normal = cursector.ceilingplane.Normal;
|
||||
pitch = asin(-normal.z);
|
||||
angle = atan2(normal.y,normal.x);
|
||||
roll = FRandom[GES](0,360);
|
||||
SetOrigin((pos.x,pos.y,ceilingz)+normal*0.5,false);
|
||||
if ( normal dot (0,0,-1) > 0.7 )
|
||||
hittype = HIT_CEILING;
|
||||
else hittype = HIT_FLOOR;
|
||||
}
|
||||
else SetStateLabel("Crash");
|
||||
}
|
||||
action void A_DropDrip()
|
||||
{
|
||||
// TODO
|
||||
}
|
||||
action void A_GelExplode()
|
||||
{
|
||||
if ( invoker.atline ) invoker.atline.RemoteActivate(target,invoker.atside,SPAC_Impact,pos);
|
||||
A_Explode(Random[GES](15,20)*Scale.x,Min(250,Scale.x*75));
|
||||
A_PlaySound("ges/explode",CHAN_VOICE);
|
||||
// TODO particles
|
||||
}
|
||||
Default
|
||||
{
|
||||
Obituary "%o drank a glass of %k's dripping green load.";
|
||||
RenderStyle "Add";
|
||||
Radius 4;
|
||||
Height 4;
|
||||
Scale 2;
|
||||
Speed 20;
|
||||
PROJECTILE;
|
||||
-NOGRAVITY;
|
||||
+SKYEXPLODE;
|
||||
+FORCERADIUSDMG;
|
||||
}
|
||||
States
|
||||
{
|
||||
Spawn:
|
||||
GELF ABCDEFGHIJKLM 1 Bright;
|
||||
Loop;
|
||||
Death:
|
||||
GELH A 1 Bright AlignSelf();
|
||||
GELH BCDEFGHIJ 1 Bright;
|
||||
GELH J 0 Bright A_SetTics(Random[GES](10,30));
|
||||
GELH J -1 Bright
|
||||
{
|
||||
if ( invoker.hittype == HIT_WALL ) return ResolveState("Slide");
|
||||
else if ( invoker.hittype == HIT_CEILING ) return ResolveState("Drip");
|
||||
return ResolveState(null);
|
||||
}
|
||||
Stop;
|
||||
Drip:
|
||||
GELD ABCDEFGH 4 Bright;
|
||||
GELD I 4 Bright A_DropDrip();
|
||||
GELD JKLM 4 Bright;
|
||||
GELD M -1 Bright;
|
||||
Wait;
|
||||
Slide:
|
||||
GELS ABCDEFG 3 Bright;
|
||||
Wait;
|
||||
Crash:
|
||||
XDeath:
|
||||
#### # 1 A_SetTics(Random[GES](1,3)); // TODO EXPLOSION
|
||||
TNT1 A 1 A_GelExplode();
|
||||
Stop;
|
||||
Shrivel:
|
||||
GELX ABCDEFGHIJKL 1 Bright; // UNUSED
|
||||
Stop;
|
||||
}
|
||||
}
|
||||
|
||||
Class BioGlob : BioGel
|
||||
{
|
||||
override void AlignSelf()
|
||||
{
|
||||
Super.AlignSelf();
|
||||
// TODO splashes
|
||||
}
|
||||
}
|
||||
|
||||
Class BioSplash : BioGel
|
||||
{
|
||||
override void AlignSelf()
|
||||
{
|
||||
Super.AlignSelf();
|
||||
if ( hittype == HIT_CEILING ) hittype = HIT_FLOOR;
|
||||
}
|
||||
}
|
||||
|
||||
Class BioRifle : UTWeapon
|
||||
{
|
||||
Default
|
||||
{
|
||||
Tag "GES Bio Rifle";
|
||||
Inventory.PickupMessage "You got the GES BioRifle.";
|
||||
Weapon.SlotNumber 3;
|
||||
Weapon.AmmoType "BioAmmo";
|
||||
Weapon.AmmoUse 1;
|
||||
Weapon.AmmoType2 "BioAmmo";
|
||||
Weapon.AmmoUse2 1;
|
||||
Weapon.AmmoGive 25;
|
||||
}
|
||||
States
|
||||
{
|
||||
Spawn:
|
||||
BIOP A -1;
|
||||
Stop;
|
||||
BIOP B -1;
|
||||
Stop;
|
||||
Ready:
|
||||
BIOS ABCDEFGHIJKLMNOPQRSTUV 1;
|
||||
Idle:
|
||||
BIOI A 1 A_WeaponReady();
|
||||
Goto Idle;
|
||||
Fire:
|
||||
BIOF ABCDEFGHI 1;
|
||||
Goto Idle;
|
||||
AltFire:
|
||||
BIOC ABCDEFGHIJKLMNOPQRSTUVWXYZ 1;
|
||||
BIC2 ABCDE 1;
|
||||
BIOM A 1;
|
||||
BIOE A 1;
|
||||
Goto Idle;
|
||||
Select:
|
||||
BIOS A 1 A_Raise(int.max);
|
||||
Wait;
|
||||
Deselect:
|
||||
BIOD ABCDEFGHIJ 1;
|
||||
BIOD J 1 A_Lower(int.max);
|
||||
Wait;
|
||||
}
|
||||
}
|
||||
|
|
@ -3,7 +3,6 @@ Class FlakAmmo : Ammo
|
|||
Default
|
||||
{
|
||||
Tag "Flak Shells";
|
||||
Inventory.Icon "I_FLAK";
|
||||
Inventory.PickupMessage "You picked up 10 Flak Shells.";
|
||||
Inventory.PickupSound "ut/ammo";
|
||||
Inventory.Amount 10;
|
||||
|
|
@ -118,8 +117,8 @@ Class FlakChunk : Actor
|
|||
Default
|
||||
{
|
||||
Obituary "%o was ripped to shreds by %k's Flak Cannon.";
|
||||
Radius 2;
|
||||
Height 2;
|
||||
Radius 4;
|
||||
Height 4;
|
||||
Speed 80;
|
||||
DamageFunction Random[Flak](12,18);
|
||||
DamageType 'Shredded';
|
||||
|
|
@ -294,8 +293,8 @@ Class FlakSlug : Actor
|
|||
{
|
||||
Obituary "%o was ripped to shreds by %k's Flak Cannon.";
|
||||
DamageType 'FlakDeath';
|
||||
Radius 2;
|
||||
Height 2;
|
||||
Radius 4;
|
||||
Height 4;
|
||||
Speed 40;
|
||||
PROJECTILE;
|
||||
-NOGRAVITY;
|
||||
|
|
|
|||
|
|
@ -2,8 +2,7 @@ Class ShockAmmo : Ammo
|
|||
{
|
||||
Default
|
||||
{
|
||||
Tag "Flak Shells";
|
||||
Inventory.Icon "I_ASMD";
|
||||
Tag "ShockCore";
|
||||
Inventory.PickupMessage "You picked up a Shock Core.";
|
||||
Inventory.PickupSound "ut/ammo";
|
||||
Inventory.Amount 10;
|
||||
|
|
|
|||
|
|
@ -4,7 +4,6 @@ Class WarheadAmmo : Ammo
|
|||
Default
|
||||
{
|
||||
Tag "Redeemer Missile";
|
||||
Inventory.Icon "I_WARH";
|
||||
Inventory.PickupMessage "You picked up a Redeemer Missile.";
|
||||
Inventory.PickupSound "ut/ammo";
|
||||
Inventory.Amount 1;
|
||||
|
|
@ -193,8 +192,8 @@ Class WarShell : Actor
|
|||
Default
|
||||
{
|
||||
Obituary "%o was vaporized by %k's Redeemer!!";
|
||||
Radius 2;
|
||||
Height 2;
|
||||
Radius 4;
|
||||
Height 4;
|
||||
Speed 5;
|
||||
DamageType 'RedeemerDeath';
|
||||
PROJECTILE;
|
||||
|
|
|
|||