1//************************************************************************** 2//** 3//** ## ## ## ## ## #### #### ### ### 4//** ## ## ## ## ## ## ## ## ## ## #### #### 5//** ## ## ## ## ## ## ## ## ## ## ## ## ## ## 6//** ## ## ######## ## ## ## ## ## ## ## ### ## 7//** ### ## ## ### ## ## ## ## ## ## 8//** # ## ## # #### #### ## ## 9//** 10//** $Id: MWeapBloodscourge.vc 4325 2010-07-15 23:11:16Z firebrand_kh $ 11//** 12//** Copyright (C) 1999-2006 Jānis Legzdiņš 13//** 14//** This program is free software; you can redistribute it and/or 15//** modify it under the terms of the GNU General Public License 16//** as published by the Free Software Foundation; either version 2 17//** of the License, or (at your option) any later version. 18//** 19//** This program is distributed in the hope that it will be useful, 20//** but WITHOUT ANY WARRANTY; without even the implied warranty of 21//** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 22//** GNU General Public License for more details. 23//** 24//************************************************************************** 25 26class MWeapBloodscourge : MageWeapon; 27 28int CShift; 29 30//========================================================================== 31// 32// GetBlend 33// 34//========================================================================== 35 36int GetBlend() 37{ 38 return CShift; 39} 40 41//========================================================================== 42// 43// A_MStaffPalette1 44// 45//========================================================================== 46 47final void A_MStaffPalette1() self(Actor) 48{ 49 if (!bIsPlayer) 50 { 51 return; 52 } 53 Weapon Wpn = PlayerEx(Player).ReadyWeapon; 54 55 MWeapBloodscourge(Wpn).CShift = RGBA(255, 187, 4, 63); 56} 57 58//========================================================================== 59// 60// A_MStaffPalette2 61// 62//========================================================================== 63 64final void A_MStaffPalette2() self(Actor) 65{ 66 if (!bIsPlayer) 67 { 68 return; 69 } 70 Weapon Wpn = PlayerEx(Player).ReadyWeapon; 71 72 MWeapBloodscourge(Wpn).CShift = RGBA(255, 187, 4, 51); 73} 74 75//========================================================================== 76// 77// A_MStaffPalette3 78// 79//========================================================================== 80 81final void A_MStaffPalette3() self(Actor) 82{ 83 if (!bIsPlayer) 84 { 85 return; 86 } 87 Weapon Wpn = PlayerEx(Player).ReadyWeapon; 88 89 // reset back to original playpal 90 MWeapBloodscourge(Wpn).CShift = 0; 91} 92 93states 94{ 95Ready: 96 MSTF AAAAAABBBBBBCCCCCCDDDDDDEEEEEEFFFFF 1 DoReadyWeapon 97 Loop 98Deselect: 99 MSTF A 1 A_Lower 100 Loop 101Select: 102 MSTF A 1 A_Raise 103 Loop 104Fire: 105 MSTF G 4 Offset(0, 40) 106 MSTF H 4 Bright Offset(0, 48) A_MStaffAttack 107 MSTF H 2 Bright Offset(0, 48) A_MStaffPalette1 108 MSTF I 2 Offset(0, 48) A_MStaffPalette2 109 MSTF I 2 Offset(0, 48) A_MStaffPalette3 110 MSTF I 1 Offset(0, 40) 111 MSTF J 5 Offset(0, 36) 112 Goto Ready 113} 114 115defaultproperties 116{ 117 SelectionOrder = 3100; 118 AmmoType1 = Mana1; 119 AmmoType2 = Mana2; 120 AmmoUse1 = 15; 121 AmmoUse2 = 15; 122 AmmoGive1 = 20; 123 AmmoGive2 = 20; 124 PSpriteSY = 20.0; 125 PickupMessage = "$txt_weapon_m4"; 126 BotCombatDist= 384.0; 127 bBotProjectile = true; 128 bExtremeDeath = true; 129 bPrimaryUsesBoth = true; 130} 131