public void AddExperience(int amount, E_AddMoneyAction moneyAction) { if (uLink.Network.isServer == false) { throw new uLink.NetworkException("AddExperience: could be called only on server"); } #if !DEADZONE_CLIENT AddMoney((int)(amount * GameplayRewards.MoneyModificator), moneyAction); if (IsPremiumAccountActive) { amount = Mathf.CeilToInt(amount * GameplayRewards.PremiumAccountModificator); } int oldRank = GetPlayerRankFromExperience(PlayerData.Params.Experience + Score.Experience); Score.Experience += (short)amount; int newRank = GetPlayerRankFromExperience(PlayerData.Params.Experience + Score.Experience); if (oldRank != newRank) { Server.Instance.SendRankUpToClient(this); AddMoney(GameplayRewards.MoneyRank, E_AddMoneyAction.Rank); Server.Instance.ShowCombatMsgOnClient(Player, Client.E_MessageType.Rank, 0, (short)(GameplayRewards.MoneyRank)); } #endif }
void AddMoney(int money, E_AddMoneyAction moneyAction) { if (uLink.Network.isServer == false) { throw new uLink.NetworkException("AddMoney: could be called only on server"); } if (IsPremiumAccountActive) { money = Mathf.CeilToInt(money * GameplayRewards.PremiumAccountModificator); } Score.Money += (short)money; }