private void CalculateAttackCard(TempPlayer player) { AttackCard card = Constants.attackCards[player.selectedCardID]; //Add initiative if player was first if (player.initiative && card.initiativeEffect != Constants.NoEffectID) { if (Constants.effects[card.initiativeEffect].selfEffect == 0) { TempPlayer enemy = player == p1 ? p2 : p1; enemy.AddEffect(card.initiativeEffect, card.initiativeValue, card.initiativeDuration); } else { player.AddEffect(card.initiativeEffect, card.initiativeValue, card.initiativeDuration); } } //Save temp results for match player.results.dmgPerBullet = card.damage; player.results.bulletsSpent = card.bullets; player.results.accuracy += card.accuracy; //+ because default value for accuracy is 100 //DETECT Other player for shooting TempPlayer other = player == p1 ? p2 : p1; switch (player.bodyPart) { case "Head": player.AddEffect(Constants.ShootInHeadEffectID, 0, 0); break; case "Arm": player.AddEffect(Constants.ShootInArmEffectID, 0, 0); break; case "Leg": player.AddEffect(Constants.ShootInLegEffectID, 0, 0); break; case "Body": player.AddEffect(Constants.ShootInBodyEffectID, 0, 0); break; } //Use PrefEffects player.UseEffects(true); player.MakeShots(other); //Use Post Effects player.UseEffects(false); }
private void CalculateItemCard(TempPlayer player) { ItemCard card = Constants.itemCards[player.selectedCardID]; if (player.initiative && card.initiativeEffect != Constants.NoEffectID) { if (Constants.effects[card.initiativeEffect].selfEffect == 0) { TempPlayer enemy = player == p1 ? p2 : p1; enemy.AddEffect(card.initiativeEffect, card.initiativeValue, card.initiativeDuration); } else { player.AddEffect(card.initiativeEffect, card.initiativeValue, card.initiativeDuration); } } //Use Pred Effects player.UseEffects(true); //No Actions here //Use Post Effects player.UseEffects(false); }
public static void ShootInLeg(TempPlayer player, int value) { ServerMatchManager manager = MatchMaker.matches[player.matchID]; TempPlayer other = manager.p1 == player ? manager.p2 : manager.p1; other.AddEffect(Constants.InjuredLegID, -10, 5); }
private void CalculateHealCard(TempPlayer player) { HealCard card = Constants.healCards[player.selectedCardID]; if (player.initiative && card.initiativeEffect != Constants.NoEffectID) { if (Constants.effects[card.initiativeEffect].selfEffect == 0) { TempPlayer enemy = player == p1 ? p2 : p1; enemy.AddEffect(card.initiativeEffect, card.initiativeValue, card.initiativeDuration); } else { player.AddEffect(card.initiativeEffect, card.initiativeValue, card.initiativeDuration); } } player.results.healing += card.heal; switch (player.bodyPart) { case "Head": player.AddEffect(Constants.HealInHeadEffectID, 0, 0); break; case "Arm": player.AddEffect(Constants.HealInArmID, 0, 0); break; case "Leg": player.AddEffect(Constants.HealInLegID, 0, 0); break; case "Body": player.AddEffect(Constants.HealInBodyID, 0, 0); break; } player.UseEffects(true); player.UseEffects(false); }
public static void ShootInArm(TempPlayer player, int value) { ServerMatchManager manager = MatchMaker.matches[player.matchID]; TempPlayer other = manager.p1 == player ? manager.p2 : manager.p1; other.AddEffect(Constants.InjuredArmID, -10, 5); //player.AddEffect(, 0, 10000); //TODO: CHECK IF IT'S Ok or change to some other value for duration }