diff --git a/modeldef.eightball b/modeldef.eightball index 279660c..7cb37ea 100644 --- a/modeldef.eightball +++ b/modeldef.eightball @@ -45,3 +45,215 @@ Model "UTRocketLauncher" FrameIndex EBLP B 1 0 } + +Model "UTRocketLauncher" +{ + Path "models" + Model 0 "Eightm_d.3d" + SurfaceSkin 0 0 "Eight_t1.png" + SurfaceSkin 0 1 "Eight_t2.png" + SurfaceSkin 0 2 "Eight_t3.png" + SurfaceSkin 0 3 "Eight_t4.png" + SurfaceSkin 0 4 "miniammoledbase.png" + Scale -0.24 0.12 0.24 + Offset 2.0 -11.0 -9.5 + AngleOffset 90 + + // Select + FrameIndex EBLS A 0 0 + FrameIndex EBLS B 0 1 + FrameIndex EBLS C 0 2 + FrameIndex EBLS D 0 3 + FrameIndex EBLS E 0 4 + FrameIndex EBLS F 0 5 + FrameIndex EBLS G 0 6 + FrameIndex EBLS H 0 7 + FrameIndex EBLS I 0 8 + FrameIndex EBLS J 0 9 + FrameIndex EBLS K 0 10 + FrameIndex EBLS L 0 11 + FrameIndex EBLS M 0 12 + FrameIndex EBLS N 0 13 + FrameIndex EBLS O 0 14 + FrameIndex EBLS P 0 15 + FrameIndex EBLS Q 0 16 + FrameIndex EBLS R 0 17 + FrameIndex EBLS S 0 18 + FrameIndex EBLS T 0 19 + // Idle + FrameIndex EBLI A 0 19 + // Fire 1 + FrameIndex EBF1 A 0 20 + FrameIndex EBF1 B 0 21 + FrameIndex EBF1 C 0 22 + FrameIndex EBF1 D 0 23 + FrameIndex EBF1 E 0 24 + FrameIndex EBF1 F 0 25 + FrameIndex EBF1 G 0 26 + FrameIndex EBF1 H 0 27 + // Fire 2 + FrameIndex EBF2 A 0 49 + FrameIndex EBF2 B 0 50 + FrameIndex EBF2 C 0 51 + FrameIndex EBF2 D 0 52 + FrameIndex EBF2 E 0 53 + FrameIndex EBF2 F 0 54 + FrameIndex EBF2 G 0 55 + FrameIndex EBF2 H 0 56 + FrameIndex EBF2 I 0 57 + FrameIndex EBF2 J 0 58 + FrameIndex EBF2 K 0 59 + // Fire 3 + FrameIndex EBF3 A 0 74 + FrameIndex EBF3 B 0 75 + FrameIndex EBF3 C 0 76 + FrameIndex EBF3 D 0 77 + FrameIndex EBF3 E 0 78 + FrameIndex EBF3 F 0 79 + FrameIndex EBF3 G 0 80 + FrameIndex EBF3 H 0 81 + FrameIndex EBF3 I 0 82 + FrameIndex EBF3 J 0 83 + // Fire 4 + FrameIndex EBF4 A 0 98 + FrameIndex EBF4 B 0 99 + FrameIndex EBF4 C 0 100 + FrameIndex EBF4 D 0 101 + FrameIndex EBF4 E 0 102 + FrameIndex EBF4 F 0 103 + FrameIndex EBF4 G 0 104 + FrameIndex EBF4 H 0 105 + FrameIndex EBF4 I 0 106 + FrameIndex EBF4 J 0 107 + FrameIndex EBF4 K 0 108 + // Fire 5 + FrameIndex EBF5 A 0 116 + FrameIndex EBF5 B 0 117 + FrameIndex EBF5 C 0 118 + FrameIndex EBF5 D 0 119 + FrameIndex EBF5 E 0 120 + FrameIndex EBF5 F 0 121 + FrameIndex EBF5 G 0 122 + FrameIndex EBF5 H 0 123 + FrameIndex EBF5 I 0 124 + FrameIndex EBF5 J 0 125 + FrameIndex EBF5 K 0 126 + FrameIndex EBF5 L 0 127 + FrameIndex EBF5 M 0 128 + // Fire 6 + FrameIndex EBF6 A 0 130 + FrameIndex EBF6 B 0 131 + FrameIndex EBF6 C 0 132 + FrameIndex EBF6 D 0 133 + FrameIndex EBF6 E 0 134 + FrameIndex EBF6 F 0 135 + FrameIndex EBF6 G 0 136 + FrameIndex EBF6 H 0 137 + FrameIndex EBF6 I 0 138 + FrameIndex EBF6 J 0 139 + FrameIndex EBF6 K 0 140 + FrameIndex EBF6 L 0 141 + FrameIndex EBF6 M 0 142 + FrameIndex EBF6 N 0 143 + FrameIndex EBF6 O 0 144 + FrameIndex EBF6 P 0 145 + // Rotate 1 + FrameIndex EBR1 A 0 35 + FrameIndex EBR1 B 0 36 + FrameIndex EBR1 C 0 37 + FrameIndex EBR1 D 0 38 + FrameIndex EBR1 E 0 39 + FrameIndex EBR1 F 0 40 + FrameIndex EBR1 G 0 41 + // Rotate 2 + FrameIndex EBR2 A 0 60 + FrameIndex EBR2 B 0 61 + FrameIndex EBR2 C 0 62 + FrameIndex EBR2 D 0 63 + FrameIndex EBR2 E 0 64 + FrameIndex EBR2 F 0 65 + FrameIndex EBR2 G 0 66 + // Rotate 3 + FrameIndex EBR3 A 0 84 + FrameIndex EBR3 B 0 85 + FrameIndex EBR3 C 0 86 + FrameIndex EBR3 D 0 87 + FrameIndex EBR3 E 0 88 + FrameIndex EBR3 F 0 89 + FrameIndex EBR3 G 0 90 + // Rotate 4 + FrameIndex EBR4 A 0 109 + FrameIndex EBR4 B 0 110 + FrameIndex EBR4 C 0 111 + FrameIndex EBR4 D 0 112 + FrameIndex EBR4 E 0 113 + FrameIndex EBR4 F 0 114 + FrameIndex EBR4 G 0 115 + // Rotate 5 + FrameIndex EBR5 A 0 164 + FrameIndex EBR5 B 0 165 + FrameIndex EBR5 C 0 166 + FrameIndex EBR5 D 0 167 + FrameIndex EBR5 E 0 168 + FrameIndex EBR5 F 0 169 + FrameIndex EBR5 G 0 170 + // Load 1 + FrameIndex EBL1 A 0 28 + FrameIndex EBL1 B 0 29 + FrameIndex EBL1 C 0 30 + FrameIndex EBL1 D 0 31 + FrameIndex EBL1 E 0 32 + FrameIndex EBL1 F 0 33 + FrameIndex EBL1 G 0 34 + // Load 2 + FrameIndex EBL2 A 0 42 + FrameIndex EBL2 B 0 43 + FrameIndex EBL2 C 0 44 + FrameIndex EBL2 D 0 45 + FrameIndex EBL2 E 0 46 + FrameIndex EBL2 F 0 47 + FrameIndex EBL2 G 0 48 + // Load 3 + FrameIndex EBL3 A 0 67 + FrameIndex EBL3 B 0 68 + FrameIndex EBL3 C 0 69 + FrameIndex EBL3 D 0 70 + FrameIndex EBL3 E 0 71 + FrameIndex EBL3 F 0 72 + FrameIndex EBL3 G 0 73 + // Load 4 + FrameIndex EBL4 A 0 91 + FrameIndex EBL4 B 0 92 + FrameIndex EBL4 C 0 93 + FrameIndex EBL4 D 0 94 + FrameIndex EBL4 E 0 95 + FrameIndex EBL4 F 0 96 + FrameIndex EBL4 G 0 97 + // Load 5 + FrameIndex EBL5 A 0 157 + FrameIndex EBL5 B 0 158 + FrameIndex EBL5 C 0 159 + FrameIndex EBL5 D 0 160 + FrameIndex EBL5 E 0 161 + FrameIndex EBL5 F 0 162 + FrameIndex EBL5 G 0 163 + // Load 6 + FrameIndex EBL6 A 0 171 + FrameIndex EBL6 B 0 172 + FrameIndex EBL6 C 0 173 + FrameIndex EBL6 D 0 174 + FrameIndex EBL6 E 0 175 + FrameIndex EBL6 F 0 176 + // Down + FrameIndex EBLD A 0 146 + FrameIndex EBLD B 0 147 + FrameIndex EBLD C 0 148 + FrameIndex EBLD D 0 149 + FrameIndex EBLD E 0 150 + FrameIndex EBLD F 0 151 + FrameIndex EBLD G 0 152 + FrameIndex EBLD H 0 153 + FrameIndex EBLD I 0 154 + FrameIndex EBLD J 0 155 + FrameIndex EBLD K 0 156 +} \ No newline at end of file diff --git a/modeldef.ges b/modeldef.ges index d18f08c..b14b865 100644 --- a/modeldef.ges +++ b/modeldef.ges @@ -262,7 +262,7 @@ Model "BioRifle" AngleOffset 94.21875 RollOffset 8.4375 Scale 0.125 -0.06 0.125 - Offset 9.8 -17.6 -9.4 + Offset 10.1 -17.8 -9.8 // select FrameIndex BIOS A 0 0 diff --git a/modeldef.rifle b/modeldef.rifle index 22f4f8b..61a79f5 100644 --- a/modeldef.rifle +++ b/modeldef.rifle @@ -43,3 +43,101 @@ Model "SniperRifle" FrameIndex SRFP B 1 0 } + +Model "SniperRifle" +{ + Path "models" + Model 0 "Rifle2m_d.3d" + SurfaceSkin 0 0 "Rifle2a.png" + SurfaceSkin 0 1 "Rifle2b.png" + SurfaceSkin 0 2 "Rifle2c.png" + SurfaceSkin 0 3 "Rifle2d.png" + Scale 0.32 -0.16 0.32 + Offset 7.5 -23.0 -7.0 + AngleOffset 90 + PitchOffset -5 // doesn't look right otherwise + + // Select + FrameIndex SRFS A 0 0 + FrameIndex SRFS B 0 1 + FrameIndex SRFS C 0 2 + FrameIndex SRFS D 0 3 + FrameIndex SRFS E 0 4 + FrameIndex SRFS F 0 5 + FrameIndex SRFS G 0 6 + FrameIndex SRFS H 0 7 + FrameIndex SRFS I 0 8 + FrameIndex SRFS J 0 9 + FrameIndex SRFS K 0 10 + FrameIndex SRFS L 0 11 + FrameIndex SRFS M 0 12 + FrameIndex SRFS N 0 13 + FrameIndex SRFS O 0 14 + FrameIndex SRFS P 0 15 + FrameIndex SRFS Q 0 16 + // Idle + FrameIndex SRFI A 0 17 + // Fire 1 + FrameIndex SRF1 A 0 17 + FrameIndex SRF1 B 0 18 + FrameIndex SRF1 C 0 19 + FrameIndex SRF1 D 0 20 + FrameIndex SRF1 E 0 21 + FrameIndex SRF1 F 0 22 + FrameIndex SRF1 G 0 23 + FrameIndex SRF1 H 0 24 + FrameIndex SRF1 I 0 25 + FrameIndex SRF1 J 0 26 + // Fire 2 + FrameIndex SRF2 A 0 27 + FrameIndex SRF2 B 0 28 + FrameIndex SRF2 C 0 29 + FrameIndex SRF2 D 0 30 + FrameIndex SRF2 E 0 31 + FrameIndex SRF2 F 0 32 + FrameIndex SRF2 G 0 33 + FrameIndex SRF2 H 0 34 + FrameIndex SRF2 I 0 35 + FrameIndex SRF2 J 0 36 + // Fire 3 + FrameIndex SRF3 A 0 37 + FrameIndex SRF3 B 0 38 + FrameIndex SRF3 C 0 39 + FrameIndex SRF3 D 0 40 + FrameIndex SRF3 E 0 41 + FrameIndex SRF3 F 0 42 + FrameIndex SRF3 G 0 43 + FrameIndex SRF3 H 0 44 + FrameIndex SRF3 I 0 45 + FrameIndex SRF3 J 0 46 + // Fire 4 + FrameIndex SRF4 A 0 47 + FrameIndex SRF4 B 0 48 + FrameIndex SRF4 C 0 49 + FrameIndex SRF4 D 0 50 + FrameIndex SRF4 E 0 51 + FrameIndex SRF4 F 0 52 + FrameIndex SRF4 G 0 53 + FrameIndex SRF4 H 0 54 + FrameIndex SRF4 I 0 55 + FrameIndex SRF4 J 0 56 + // Fire 5 + FrameIndex SRF5 A 0 57 + FrameIndex SRF5 B 0 58 + FrameIndex SRF5 C 0 59 + FrameIndex SRF5 D 0 60 + FrameIndex SRF5 E 0 61 + FrameIndex SRF5 F 0 62 + FrameIndex SRF5 G 0 63 + FrameIndex SRF5 H 0 64 + FrameIndex SRF5 I 0 65 + FrameIndex SRF5 J 0 66 + // Down + FrameIndex SRFD A 0 67 + FrameIndex SRFD B 0 68 + FrameIndex SRFD C 0 69 + FrameIndex SRFD D 0 70 + FrameIndex SRFD E 0 71 + FrameIndex SRFD F 0 72 + FrameIndex SRFD G 0 73 +} \ No newline at end of file diff --git a/modeldef.warhead b/modeldef.warhead index e7494b4..b967b14 100644 --- a/modeldef.warhead +++ b/modeldef.warhead @@ -80,11 +80,11 @@ Model "WarheadLauncher" SurfaceSkin 0 1 "jwarhead2.png" SurfaceSkin 0 2 "jwarhead3.png" SurfaceSkin 0 3 "jwarhead4.png" - Scale 0.2 -0.12 0.2 + Scale 0.2 -0.1 0.2 AngleOffset 90 - PitchOffset 33.5 - RollOffset -87.1875 - Offset 6.2 -15.6 -6.2 + PitchOffset 35.0 + RollOffset -85.0 + Offset 5.8 -13.6 -5.2 // select FrameIndex WARS A 0 0 diff --git a/models/MuzzleFlash2.png b/models/MuzzleFlash2.png new file mode 100644 index 0000000..31fa7cc Binary files /dev/null and b/models/MuzzleFlash2.png differ diff --git a/sndinfo.txt b/sndinfo.txt index b3dd564..11c233d 100644 --- a/sndinfo.txt +++ b/sndinfo.txt @@ -202,6 +202,19 @@ $random flak/bounce { flak/bounce1 flak/bounce2 flak/bounce3 } $limit flak/bounce 64 flak/explode expl04 +utrl/select selectin +utrl/rotate barrelmv +utrl/load loading +utrl/fire ignite +utrl/altfire eightalt +utrl/seeklock seeklock +utrl/seeklost seeklost +utrl/fly rcktfly1 +utrl/explode expl2 + +sniper/select riflepck +sniper/fire sniperf + warhead/explode warexplo warhead/fly warfly warhead/select warhpick diff --git a/sounds/BarrelMv.ogg b/sounds/BarrelMv.ogg new file mode 100644 index 0000000..fd165be Binary files /dev/null and b/sounds/BarrelMv.ogg differ diff --git a/textures.eightball b/textures.eightball index 9a77818..ec2f872 100644 --- a/textures.eightball +++ b/textures.eightball @@ -2,3 +2,180 @@ Sprite "RPAKA0",1,1{} Sprite "RCKTA0",1,1{} Sprite "EBLPA0",1,1{} Sprite "EBLPB0",1,1{} +Sprite "EBLSA0",1,1{} +Sprite "EBLSB0",1,1{} +Sprite "EBLSC0",1,1{} +Sprite "EBLSD0",1,1{} +Sprite "EBLSE0",1,1{} +Sprite "EBLSF0",1,1{} +Sprite "EBLSG0",1,1{} +Sprite "EBLSH0",1,1{} +Sprite "EBLSI0",1,1{} +Sprite "EBLSJ0",1,1{} +Sprite "EBLSK0",1,1{} +Sprite "EBLSL0",1,1{} +Sprite "EBLSM0",1,1{} +Sprite "EBLSN0",1,1{} +Sprite "EBLSO0",1,1{} +Sprite "EBLSP0",1,1{} +Sprite "EBLSQ0",1,1{} +Sprite "EBLSR0",1,1{} +Sprite "EBLSS0",1,1{} +Sprite "EBLST0",1,1{} +Sprite "EBLIA0",1,1{} +Sprite "EBF1A0",1,1{} +Sprite "EBF1B0",1,1{} +Sprite "EBF1C0",1,1{} +Sprite "EBF1D0",1,1{} +Sprite "EBF1E0",1,1{} +Sprite "EBF1F0",1,1{} +Sprite "EBF1G0",1,1{} +Sprite "EBF1H0",1,1{} +Sprite "EBF2A0",1,1{} +Sprite "EBF2B0",1,1{} +Sprite "EBF2C0",1,1{} +Sprite "EBF2D0",1,1{} +Sprite "EBF2E0",1,1{} +Sprite "EBF2F0",1,1{} +Sprite "EBF2G0",1,1{} +Sprite "EBF2H0",1,1{} +Sprite "EBF2I0",1,1{} +Sprite "EBF2J0",1,1{} +Sprite "EBF2K0",1,1{} +Sprite "EBF3A0",1,1{} +Sprite "EBF3B0",1,1{} +Sprite "EBF3C0",1,1{} +Sprite "EBF3D0",1,1{} +Sprite "EBF3E0",1,1{} +Sprite "EBF3F0",1,1{} +Sprite "EBF3G0",1,1{} +Sprite "EBF3H0",1,1{} +Sprite "EBF3I0",1,1{} +Sprite "EBF3J0",1,1{} +Sprite "EBF4A0",1,1{} +Sprite "EBF4B0",1,1{} +Sprite "EBF4C0",1,1{} +Sprite "EBF4D0",1,1{} +Sprite "EBF4E0",1,1{} +Sprite "EBF4F0",1,1{} +Sprite "EBF4G0",1,1{} +Sprite "EBF4H0",1,1{} +Sprite "EBF4I0",1,1{} +Sprite "EBF4J0",1,1{} +Sprite "EBF4K0",1,1{} +Sprite "EBF5A0",1,1{} +Sprite "EBF5B0",1,1{} +Sprite "EBF5C0",1,1{} +Sprite "EBF5D0",1,1{} +Sprite "EBF5E0",1,1{} +Sprite "EBF5F0",1,1{} +Sprite "EBF5G0",1,1{} +Sprite "EBF5H0",1,1{} +Sprite "EBF5I0",1,1{} +Sprite "EBF5J0",1,1{} +Sprite "EBF5K0",1,1{} +Sprite "EBF5L0",1,1{} +Sprite "EBF5M0",1,1{} +Sprite "EBF6A0",1,1{} +Sprite "EBF6B0",1,1{} +Sprite "EBF6C0",1,1{} +Sprite "EBF6D0",1,1{} +Sprite "EBF6E0",1,1{} +Sprite "EBF6F0",1,1{} +Sprite "EBF6G0",1,1{} +Sprite "EBF6H0",1,1{} +Sprite "EBF6I0",1,1{} +Sprite "EBF6J0",1,1{} +Sprite "EBF6K0",1,1{} +Sprite "EBF6L0",1,1{} +Sprite "EBF6M0",1,1{} +Sprite "EBF6N0",1,1{} +Sprite "EBF6O0",1,1{} +Sprite "EBF6P0",1,1{} +Sprite "EBR1A0",1,1{} +Sprite "EBR1B0",1,1{} +Sprite "EBR1C0",1,1{} +Sprite "EBR1D0",1,1{} +Sprite "EBR1E0",1,1{} +Sprite "EBR1F0",1,1{} +Sprite "EBR1G0",1,1{} +Sprite "EBR2A0",1,1{} +Sprite "EBR2B0",1,1{} +Sprite "EBR2C0",1,1{} +Sprite "EBR2D0",1,1{} +Sprite "EBR2E0",1,1{} +Sprite "EBR2F0",1,1{} +Sprite "EBR2G0",1,1{} +Sprite "EBR3A0",1,1{} +Sprite "EBR3B0",1,1{} +Sprite "EBR3C0",1,1{} +Sprite "EBR3D0",1,1{} +Sprite "EBR3E0",1,1{} +Sprite "EBR3F0",1,1{} +Sprite "EBR3G0",1,1{} +Sprite "EBR4A0",1,1{} +Sprite "EBR4B0",1,1{} +Sprite "EBR4C0",1,1{} +Sprite "EBR4D0",1,1{} +Sprite "EBR4E0",1,1{} +Sprite "EBR4F0",1,1{} +Sprite "EBR4G0",1,1{} +Sprite "EBR5A0",1,1{} +Sprite "EBR5B0",1,1{} +Sprite "EBR5C0",1,1{} +Sprite "EBR5D0",1,1{} +Sprite "EBR5E0",1,1{} +Sprite "EBR5F0",1,1{} +Sprite "EBR5G0",1,1{} +Sprite "EBL1A0",1,1{} +Sprite "EBL1B0",1,1{} +Sprite "EBL1C0",1,1{} +Sprite "EBL1D0",1,1{} +Sprite "EBL1E0",1,1{} +Sprite "EBL1F0",1,1{} +Sprite "EBL1G0",1,1{} +Sprite "EBL2A0",1,1{} +Sprite "EBL2B0",1,1{} +Sprite "EBL2C0",1,1{} +Sprite "EBL2D0",1,1{} +Sprite "EBL2E0",1,1{} +Sprite "EBL2F0",1,1{} +Sprite "EBL2G0",1,1{} +Sprite "EBL3A0",1,1{} +Sprite "EBL3B0",1,1{} +Sprite "EBL3C0",1,1{} +Sprite "EBL3D0",1,1{} +Sprite "EBL3E0",1,1{} +Sprite "EBL3F0",1,1{} +Sprite "EBL3G0",1,1{} +Sprite "EBL4A0",1,1{} +Sprite "EBL4B0",1,1{} +Sprite "EBL4C0",1,1{} +Sprite "EBL4D0",1,1{} +Sprite "EBL4E0",1,1{} +Sprite "EBL4F0",1,1{} +Sprite "EBL4G0",1,1{} +Sprite "EBL5A0",1,1{} +Sprite "EBL5B0",1,1{} +Sprite "EBL5C0",1,1{} +Sprite "EBL5D0",1,1{} +Sprite "EBL5E0",1,1{} +Sprite "EBL5F0",1,1{} +Sprite "EBL5G0",1,1{} +Sprite "EBL6A0",1,1{} +Sprite "EBL6B0",1,1{} +Sprite "EBL6C0",1,1{} +Sprite "EBL6D0",1,1{} +Sprite "EBL6E0",1,1{} +Sprite "EBL6F0",1,1{} +Sprite "EBLDA0",1,1{} +Sprite "EBLDB0",1,1{} +Sprite "EBLDC0",1,1{} +Sprite "EBLDD0",1,1{} +Sprite "EBLDE0",1,1{} +Sprite "EBLDF0",1,1{} +Sprite "EBLDG0",1,1{} +Sprite "EBLDH0",1,1{} +Sprite "EBLDI0",1,1{} +Sprite "EBLDJ0",1,1{} +Sprite "EBLDK0",1,1{} diff --git a/textures.sniper b/textures.sniper index f5f4fdf..f6c9539 100644 --- a/textures.sniper +++ b/textures.sniper @@ -2,3 +2,78 @@ Sprite "SBOXA0",1,1{} Sprite "SRNDA0",1,1{} Sprite "SRFPA0",1,1{} Sprite "SRFPB0",1,1{} +Sprite "SRFSA0",1,1{} +Sprite "SRFSB0",1,1{} +Sprite "SRFSC0",1,1{} +Sprite "SRFSD0",1,1{} +Sprite "SRFSE0",1,1{} +Sprite "SRFSF0",1,1{} +Sprite "SRFSG0",1,1{} +Sprite "SRFSH0",1,1{} +Sprite "SRFSI0",1,1{} +Sprite "SRFSJ0",1,1{} +Sprite "SRFSK0",1,1{} +Sprite "SRFSL0",1,1{} +Sprite "SRFSM0",1,1{} +Sprite "SRFSN0",1,1{} +Sprite "SRFSO0",1,1{} +Sprite "SRFSP0",1,1{} +Sprite "SRFSQ0",1,1{} +Sprite "SRFIA0",1,1{} +Sprite "SRF1A0",1,1{} +Sprite "SRF1B0",1,1{} +Sprite "SRF1C0",1,1{} +Sprite "SRF1D0",1,1{} +Sprite "SRF1E0",1,1{} +Sprite "SRF1F0",1,1{} +Sprite "SRF1G0",1,1{} +Sprite "SRF1H0",1,1{} +Sprite "SRF1I0",1,1{} +Sprite "SRF1J0",1,1{} +Sprite "SRF2A0",1,1{} +Sprite "SRF2B0",1,1{} +Sprite "SRF2C0",1,1{} +Sprite "SRF2D0",1,1{} +Sprite "SRF2E0",1,1{} +Sprite "SRF2F0",1,1{} +Sprite "SRF2G0",1,1{} +Sprite "SRF2H0",1,1{} +Sprite "SRF2I0",1,1{} +Sprite "SRF2J0",1,1{} +Sprite "SRF3A0",1,1{} +Sprite "SRF3B0",1,1{} +Sprite "SRF3C0",1,1{} +Sprite "SRF3D0",1,1{} +Sprite "SRF3E0",1,1{} +Sprite "SRF3F0",1,1{} +Sprite "SRF3G0",1,1{} +Sprite "SRF3H0",1,1{} +Sprite "SRF3I0",1,1{} +Sprite "SRF3J0",1,1{} +Sprite "SRF4A0",1,1{} +Sprite "SRF4B0",1,1{} +Sprite "SRF4C0",1,1{} +Sprite "SRF4D0",1,1{} +Sprite "SRF4E0",1,1{} +Sprite "SRF4F0",1,1{} +Sprite "SRF4G0",1,1{} +Sprite "SRF4H0",1,1{} +Sprite "SRF4I0",1,1{} +Sprite "SRF4J0",1,1{} +Sprite "SRF5A0",1,1{} +Sprite "SRF5B0",1,1{} +Sprite "SRF5C0",1,1{} +Sprite "SRF5D0",1,1{} +Sprite "SRF5E0",1,1{} +Sprite "SRF5F0",1,1{} +Sprite "SRF5G0",1,1{} +Sprite "SRF5H0",1,1{} +Sprite "SRF5I0",1,1{} +Sprite "SRF5J0",1,1{} +Sprite "SRFDA0",1,1{} +Sprite "SRFDB0",1,1{} +Sprite "SRFDC0",1,1{} +Sprite "SRFDD0",1,1{} +Sprite "SRFDE0",1,1{} +Sprite "SRFDF0",1,1{} +Sprite "SRFDG0",1,1{} diff --git a/zscript/eightball.zsc b/zscript/eightball.zsc index 8ebdbf2..2463aa2 100644 --- a/zscript/eightball.zsc +++ b/zscript/eightball.zsc @@ -38,11 +38,13 @@ Class UTRocketAmmo2 : UTRocketAmmo Class UTRocketLauncher : UTWeapon { + int loaded; + Default { Tag "Rocket Launcher"; Inventory.PickupMessage "You got the Rocket Launcher."; - Weapon.UpSound ""; + Weapon.UpSound "utrl/select"; Weapon.SlotNumber 9; Weapon.SelectionOrder 1; Weapon.AmmoType "UTRocketAmmo"; @@ -58,5 +60,40 @@ Class UTRocketLauncher : UTWeapon Stop; EBLP B -1; Stop; + Select: + EBLS A 1 A_Raise(int.max); + Wait; + Ready: + EBLS ABCDEFGHIJKLMNOPQRST 1; + Idle: + EBLI A 1 + { + A_CheckReload(); + A_WeaponReady(); + } + Wait; + Fire: + EBF1 ABCDEFGH 1; + EBF2 ABCDEFGHIJK 1; + EBF3 ABCDEFGHIJ 1; + EBF4 ABCDEFGHIJK 1; + EBF5 ABCDEFGHIJKLM 1; + EBF6 ABCDEFGHIJKLMNOP 1; + EBR1 ABCDEFG 1; + EBR2 ABCDEFG 1; + EBR3 ABCDEFG 1; + EBR4 ABCDEFG 1; + EBR5 ABCDEFG 1; + EBL1 ABCDEFG 1; + EBL2 ABCDEFG 1; + EBL3 ABCDEFG 1; + EBL4 ABCDEFG 1; + EBL5 ABCDEFG 1; + EBL6 ABCDEF 1; + Goto Idle; + Deselect: + EBLD ABCDEFGHIJK 1; + EBLD K 1 A_Lower(int.max); + Wait; } } diff --git a/zscript/sniperrifle.zsc b/zscript/sniperrifle.zsc index e7532c5..feed105 100644 --- a/zscript/sniperrifle.zsc +++ b/zscript/sniperrifle.zsc @@ -41,7 +41,7 @@ Class SniperRifle : UTWeapon { Tag "Sniper Rifle"; Inventory.PickupMessage "You got the Sniper Rifle."; - Weapon.UpSound ""; + Weapon.UpSound "sniper/select"; Weapon.SlotNumber 0; Weapon.SelectionOrder 5; Weapon.AmmoType "RifleAmmo"; @@ -57,5 +57,48 @@ Class SniperRifle : UTWeapon Stop; SRFP B -1; Stop; + Select: + SRFS A 1 A_Raise(int.max); + Wait; + Ready: + SRFS A 1; + SRFS B 2; + SRFS C 1; + SRFS D 2; + SRFS E 1; + SRFS F 2; + SRFS G 1; + SRFS H 2; + SRFS I 1; + SRFS J 2; + SRFS K 1; + SRFS L 2; + SRFS M 1; + SRFS N 2; + SRFS O 1; + SRFS P 2; + SRFS Q 1; + Idle: + SRFI A 1 + { + A_CheckReload(); + A_WeaponReady(); + } + Wait; + Fire: + SRF1 ABCDEFGHIJ 2; + Goto Idle; + SRF2 ABCDEFGHIJ 2; + Goto Idle; + SRF3 ABCDEFGHIJ 2; + Goto Idle; + SRF4 ABCDEFGHIJ 2; + Goto Idle; + SRF5 ABCDEFGHIJ 2; + Goto Idle; + Deselect: + SRFD ABCDEFG 2; + SRFD G 1 A_Lower(int.max); + Wait; } }