Flak Cannon time.

This commit is contained in:
Marisa the Magician 2018-06-21 16:26:30 +02:00
commit f532f74d85
24 changed files with 416 additions and 7 deletions

View file

@ -0,0 +1,117 @@
Class UFlakBox : Ammo
{
Default
{
Tag "Flak Shell Box";
Inventory.Icon "I_Flak";
Inventory.PickupMessage "You picked up 10 Flak Shells.";
Inventory.Amount 10;
Inventory.MaxAmount 50;
Ammo.BackpackAmount 5;
Ammo.BackpackMaxAmount 100;
Ammo.DropAmount 5;
}
States
{
Spawn:
FBOX A -1;
Stop;
}
}
Class UFlakAmmo : UFlakBox
{
Default
{
Tag "Flak Shell";
Inventory.Icon "I_Flak";
Inventory.PickupMessage "You picked up a Flak Shell.";
Inventory.Amount 1;
Ammo.DropAmount 1;
}
States
{
Spawn:
FSHL B -1;
Stop;
}
}
Class UFlakCannon : UnrealWeapon
{
bool bLoaded;
action void A_Loading( bool first = false )
{
invoker.bLoaded = true;
if ( first ) A_PlaySound("uflak/load",CHAN_WEAPON);
else A_PlaySound("uflak/reload",CHAN_6);
}
Default
{
Tag "Flak Cannon";
Inventory.PickupMessage "You got the Flak Cannon.";
Weapon.UpSound "uflak/select";
Weapon.SlotNumber 6;
Weapon.SelectionOrder 4;
Weapon.AmmoType "UFlakBox";
Weapon.AmmoUse 1;
Weapon.AmmoType2 "UFlakBox";
Weapon.AmmoUse2 1;
Weapon.AmmoGive 10;
}
States
{
Spawn:
FLKP A -1;
Stop;
FLKP B -1;
Stop;
Select:
FLKS A 1 A_Raise(int.max);
Wait;
Ready:
FLKS ABCDEFGHIJKLMNOPQRSTUVWXYZ 1 A_WeaponReady(WRF_NOFIRE);
FLS2 ABCD 1 A_WeaponReady(WRF_NOFIRE);
FLKL A 1 A_Loading(true);
FLKL BCEFGIJKMNO 1;
Goto Idle;
Loading:
FLKL A 1 A_Loading();
FLKL BCEFGIJKMNO 1;
Goto Idle;
Idle:
FLKI A 1
{
A_CheckReload();
A_WeaponReady();
}
Wait;
Idle2:
FLI2 A 1
{
A_CheckReload();
A_WeaponReady();
}
Wait;
Fire:
FLKI A 0 A_JumpIf(!invoker.bLoaded,"Loading");
FLKF ABCDEFGHIJ 1;
FLKE ABCDEFGHIJKLMNS 1;
FLKE S 0 A_JumpIfNoAmmo("Idle2");
Goto Loading;
AltFire:
FLKI A 0 A_JumpIf(!invoker.bLoaded,"Loading");
FLKA ABCDEFGHIJK 2;
FLKA K 0 A_JumpIfNoAmmo("Idle2");
Goto Loading;
Deselect:
FLKD A 0 A_JumpIfNoAmmo("Deselect2");
FLKD ABCDEF 1;
FLKD F 1 A_Lower(int.max);
Wait;
Deselect2:
FLD2 ABCDEF 1;
FLD2 F 1 A_Lower(int.max);
Wait;
}
}

View file

@ -115,7 +115,7 @@ Class UTranslator : UnrealInventory
String ttxt;
if ( bShowHint && (Hint.length() > 0) ) ttxt = String.Format("Hint: %s",Hint);
else if ( NewMessage.length() > 0 ) ttxt = NewMessage;
else ttxt = "I'd just like to interject for a moment. What you're referring to as Linux, is in fact, GNU/Linux, or as I've recently taken to calling it, GNU plus Linux. Linux is not an operating system unto itself, but rather another free component of a fully functioning GNU system made useful by the GNU corelibs, shell utilities and vital system components comprising a full OS as defined by POSIX.";
else ttxt = "No new messages.";
BrokenLines lines = tfnt.BreakLines(ttxt,220);
int th = tfnt.GetHeight();
CurX += 20;