Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Removed XC_ImpactEvents, replaced by better ECM_ImpactPush. Fixed bug in LC sub-engine. Added LCComboGib mutator.
- Loading branch information
Showing
13 changed files
with
222 additions
and
216 deletions.
There are no files selected for viewing
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,5 @@ | ||
[Public] | ||
Object=(Name=LCWeapons_0022.LCMutator,Class=Class,MetaClass=Engine.Mutator,Description="Lag Compensator") | ||
Object=(Name=LCWeapons_0022.FV_ColoredShock,Class=Class,MetaClass=Engine.Mutator,Description="LC: ColoredShock, Requires Lag Compensator mutator loaded!") | ||
Object=(Name=LCWeapons_0024.LCMutator,Class=Class,MetaClass=Engine.Mutator,Description="Lag Compensator") | ||
Object=(Name=LCWeapons_0024.LCComboGib,Class=Class,MetaClass=Engine.Mutator,Description="LC: ComboGib, Requires Lag Compensator mutator loaded!") | ||
Object=(Name=LCWeapons_0024.FV_ColoredShock,Class=Class,MetaClass=Engine.Mutator,Description="LC: ColoredShock, Requires Lag Compensator mutator loaded!") | ||
|
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,56 @@ | ||
//============================================================================= | ||
// ECM_ImpactPush. | ||
// ECM Element containing a fixed velocity push event. | ||
// TODO: Move to base ECM | ||
//============================================================================= | ||
class ECM_ImpactPush expands ECM_Element; | ||
|
||
var float PushTimeStamp; | ||
var vector PushVelocity; | ||
|
||
|
||
event Tick( float DeltaTime) | ||
{ | ||
if ( ECM == None || ECM.LocalPlayer == None ) | ||
Error( "Bad client ECM"); | ||
|
||
if ( ECM.LocalPlayer.CurrentTimeStamp >= PushTimeStamp ) | ||
{ | ||
bActive = false; | ||
Destroy(); | ||
} | ||
} | ||
|
||
function ClientUpdatePosition( PlayerPawn Client, SavedMove CurrentMove) | ||
{ | ||
local float NextTimeStamp; | ||
|
||
if ( CurrentMove.NextMove != None ) | ||
NextTimeStamp = CurrentMove.NextMove.TimeStamp; | ||
else | ||
NextTimeStamp = Level.TimeSeconds; | ||
|
||
if ( (PushTimeStamp >= CurrentMove.TimeStamp) && (PushTimeStamp < NextTimeStamp) ) | ||
ProcessPush( Client); | ||
} | ||
|
||
function SetupPush( vector NewPushVel) | ||
{ | ||
PushTimeStamp = Level.TimeSeconds; | ||
PushVelocity = NewPushVel; | ||
ProcessPush( ECM.LocalPlayer); | ||
} | ||
|
||
function ProcessPush( PlayerPawn Client) | ||
{ | ||
if ( Client.Physics == PHYS_Walking ) | ||
Client.SetPhysics( PHYS_Falling); | ||
Client.Velocity += PushVelocity; | ||
} | ||
|
||
|
||
|
||
defaultproperties | ||
{ | ||
bActive=True | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,101 @@ | ||
//============================================================================= | ||
// LCComboGib. | ||
// Noob coders, noob coders everywhere | ||
//============================================================================= | ||
class LCComboGib expands LCArenaMutator | ||
config(LCWeapons); | ||
|
||
var() config float ForceBallDamage; | ||
var() config float LolPushChance; //Push a player's corpse far away instead of gibbing(0-100) | ||
var() config bool bLolAffectsTeam; | ||
var() config bool bKeepBoots; | ||
var() config int LimitBalls; //It doesn't make a bit of difference guys, the balls are inert - Piccolo | ||
|
||
|
||
function AddMutator( Mutator M) | ||
{ | ||
if ( LCMutator(M) != None ) | ||
LCMutator = LCMutator(M); | ||
Super.AddMutator(M); | ||
} | ||
|
||
event PostBeginPlay() | ||
{ | ||
SetupWeaponReplace( class'ShockRifle', class'LCShockRifle'); | ||
SetupWeaponRespawn( true, true, true, true, true, true); | ||
SetupPickups( true, true, !bKeepBoots, false); | ||
AddPropertyWeapon("bNoAmmoDeplete","1"); | ||
AddPropertyWeapon("MyDamageType","joltedgib"); | ||
NextDamageMutator = Level.Game.DamageMutator; | ||
Level.Game.DamageMutator = self; | ||
SetTimer(20,true); | ||
SaveConfig(); | ||
} | ||
|
||
event Timer() | ||
{ | ||
default.ForceBallDamage = ForceBallDamage; | ||
SaveConfig(); //Save config every 20 seconds | ||
//This mutator's config is applied entirely on the fly | ||
//Meaning it can be edited ingame and the effects will be seen and saved | ||
} | ||
|
||
function Weapon GiveWeapon( Pawn PlayerPawn, class<Weapon> WeaponClass, optional bool bNoProps ) | ||
{ | ||
local Weapon NewWeapon; | ||
|
||
NewWeapon = Super.GiveWeapon( PlayerPawn, WeaponClass,bNoProps); | ||
if ( !bNoProps && (FRand()*100.0 < LolPushChance) ) | ||
{ | ||
NewWeapon.MyDamageType = 'joltedlol'; | ||
if ( ShockRifle(NewWeapon) != None ) | ||
ShockRifle(NewWeapon).HitDamage = 10; | ||
if ( LCShockRifle(NewWeapon) != None ) | ||
LCShockRifle(NewWeapon).bLolRifle = true; | ||
} | ||
return NewWeapon; | ||
} | ||
|
||
function MutatorTakeDamage( out int ActualDamage, Pawn Victim, Pawn InstigatedBy, out Vector HitLocation, | ||
out Vector Momentum, name DamageType) | ||
{ | ||
local float BallDamage; | ||
|
||
if ( DamageType == 'joltedlol' ) | ||
{ | ||
if ( bLolAffectsTeam || ActualDamage > 0 ) | ||
{ | ||
if ( ActualDamage > 0 ) | ||
ActualDamage = Clamp( Victim.Health, 25, 300); | ||
Momentum *= 7; | ||
} | ||
} | ||
else if ( DamageType == 'joltedgib' ) //Ensure kill | ||
{ | ||
if ( ActualDamage > 0 ) | ||
ActualDamage = 999; | ||
} | ||
else if ( ActualDamage > 0 && DamageType == 'jolted' ) //Combos and other jolted damages | ||
{ | ||
BallDamage = 55; | ||
if ( (DeathMatchPlus(Level.Game) != None) && DeathMatchPlus(Level.Game).bHardcoreMode ) | ||
BallDamage *= 1.5; | ||
|
||
if ( ActualDamage > BallDamage ) | ||
ActualDamage = ForceBallDamage + (ActualDamage - BallDamage) * 5; | ||
else if ( ForceBallDamage > 0 ) | ||
ActualDamage = ForceBallDamage; | ||
} | ||
|
||
if ( NextDamageMutator != None ) | ||
NextDamageMutator.MutatorTakeDamage( ActualDamage, Victim, InstigatedBy, HitLocation, Momentum, DamageType ); | ||
} | ||
|
||
|
||
defaultproperties | ||
{ | ||
LolPushChance=10 | ||
LimitBalls=4 | ||
ForceBallDamage=0.100000 | ||
bKeepBoots=true | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.