Advertisement
inkoalawetrust

Vanilla Rifle

Apr 28th, 2021
693
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.95 KB | None | 0 0
  1. Class VanillaRifle : Weapon
  2. {
  3.     Default
  4.     {
  5.         //$Title Vanilla Rifle
  6.         //$Category Weapons
  7.         Weapon.SelectionOrder 1000;
  8.         Weapon.AmmoUse 1;
  9.         Weapon.AmmoGive 40;
  10.         Weapon.AmmoType "Clip";
  11.         Weapon.BobStyle "Smooth";
  12.         Weapon.BobSpeed 1.2;
  13.         Weapon.SlotNumber 4;
  14.         Weapon.SlotPriority 100.0;
  15.         AttackSound "Marine/Fire";
  16.         Inventory.PickupMessage "You picked up the rifle !";
  17.         Obituary "%o was gunned down by %k's assault rifle";
  18.     }
  19.     Int RoundsFired; //Keeps track of how many rounds were fired.
  20.     States
  21.     {
  22.         Spawn:
  23.             VRIF Z -1;
  24.             Stop;
  25.         Ready:
  26.             VRIF AB 4 A_WeaponReady(WRF_ALLOWRELOAD);
  27.             Loop;
  28.         Select:
  29.             VRIF AB 4 A_Raise();
  30.             Stop;
  31.         Deselect:
  32.             VRIF AB 4 A_Lower();
  33.             Loop;
  34.         Fire:
  35.             VRIF "#" 2;
  36.             //First shot
  37.             VRIF C 3
  38.             {
  39.                 A_WeaponOffset(wy:36,WOF_KEEPX|WOF_ADD|WOF_INTERPOLATE);
  40.                 A_FireBullets (2.2,2.3,1,6,"SmartMarinePuff",range:8192+2,spawnheight:21);
  41.                 A_GunFlash();
  42.                 RoundsFired++;
  43.                 If (RoundsFired >= 20) {Return ResolveState ("Reload");}
  44.             }
  45.             VRIF D 3
  46.             {
  47.                 A_WeaponOffset(wy:32,WOF_KEEPX|WOF_ADD|WOF_INTERPOLATE);
  48.                 A_CheckReload();
  49.             }
  50.             //Second shot
  51.             VRIF C 3
  52.             {
  53.                 A_WeaponOffset(wy:36,WOF_KEEPX|WOF_ADD|WOF_INTERPOLATE);
  54.                 A_FireBullets (2.2,2.3,1,6,"SmartMarinePuff",range:8192+2,spawnheight:21);
  55.                 A_GunFlash();
  56.                 RoundsFired++;
  57.                 If (RoundsFired >= 20) {Return ResolveState ("Reload");}
  58.             }
  59.             VRIF D 3
  60.             {
  61.                 A_WeaponOffset(wy:32,WOF_KEEPX|WOF_ADD|WOF_INTERPOLATE);
  62.                 A_CheckReload();
  63.             }
  64.             //Third shot
  65.             VRIF C 3
  66.             {
  67.                 A_WeaponOffset(wy:36,WOF_KEEPX|WOF_ADD|WOF_INTERPOLATE);
  68.                 A_FireBullets (2.2,2.3,1,6,"SmartMarinePuff",range:8192+2,spawnheight:21);
  69.                 A_GunFlash();
  70.                 RoundsFired++;
  71.                 If (RoundsFired >= 20) {Return ResolveState ("Reload");}
  72.             }
  73.             VRIF D 3
  74.             {
  75.                 A_WeaponOffset(wy:32,WOF_KEEPX|WOF_ADD|WOF_INTERPOLATE);
  76.                 A_CheckReload();
  77.             }
  78.             //Fourth shot
  79.             VRIF C 3
  80.             {
  81.                 A_WeaponOffset(wy:36,WOF_KEEPX|WOF_ADD|WOF_INTERPOLATE);
  82.                 A_FireBullets (2.2,2.3,1,6,"SmartMarinePuff",range:8192+2,spawnheight:21);
  83.                 A_GunFlash();
  84.                 RoundsFired++;
  85.                 If (RoundsFired >= 20) {Return ResolveState ("Reload");}
  86.             }
  87.             VRIF D 3
  88.             {
  89.                 A_WeaponOffset(wy:32,WOF_KEEPX|WOF_ADD|WOF_INTERPOLATE);
  90.                 A_CheckReload();
  91.             }
  92.             //Fifth shot
  93.             VRIF C 3
  94.             {
  95.                 A_WeaponOffset(wy:36,WOF_KEEPX|WOF_ADD|WOF_INTERPOLATE);
  96.                 A_FireBullets (2.2,2.3,1,6,"SmartMarinePuff",range:8192+2,spawnheight:21);
  97.                 A_GunFlash();
  98.                 RoundsFired++;
  99.                 If (RoundsFired >= 20) {Return ResolveState ("Reload");}
  100.             }
  101.             VRIF D 3
  102.             {
  103.                 A_WeaponOffset(wy:32,WOF_KEEPX|WOF_ADD|WOF_INTERPOLATE);
  104.                 A_CheckReload();
  105.             }
  106.             VRIF ABAB 4;
  107.             VRIF AB 4 A_ReFire();
  108.             Goto Ready;
  109.         Flash:
  110.             VRIF C 3 A_Light (Random(1,2));
  111.             TNT1 A 0 A_Light (0);
  112.             Stop;
  113.         Reload:
  114.             VRIF EFG 6;
  115.             VRIF H 6
  116.             {
  117.                 A_StartSound ("Marine/Reload",CHAN_WEAPON);
  118.                 RoundsFired = 0;
  119.             }
  120.             VRIF AB 4;
  121.             Goto Ready;
  122.     }
  123. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement