/*public static PlayerConstants Instance { * get{ return instance; } * }*/ // Use this for initialization void Start() { if (instance == null) { instance = this; } }
public void SendChatToTeam(ServerPlayer from, TeamColors to, string chat, bool action) { if (chat == string.Empty) { return; } ChatMessageEventArgs args = new ChatMessageEventArgs(); args.From = from; args.To = null; args.ToTeam = to; args.MessageText = chat; args.Action = action; args.ChatType = from == null ? ChatMessageEventArgs.ChatMessageTypes.ServerTeamMessage : ChatMessageEventArgs.ChatMessageTypes.TeamMessage; if (args.ToTeam == TeamColors.NoTeam) { return; } MsgMessage msg = new MsgMessage(); msg.MessageText = chat; msg.From = from == null ? PlayerConstants.ServerPlayerID : from.PlayerID; msg.To = PlayerConstants.GetTeamPlayerID(to); msg.MessageType = action ? MsgMessage.MessageTypes.ActionMessage : MsgMessage.MessageTypes.ChatMessage; Players.SendToTeam(msg, to, false); MessageSent?.Invoke(this, args); }
void Awake() { stats = GetComponent <Stats>(); matchRules = WorldConstants.MatchController.GetComponent <LevelManager>().MatchRules; pConsts = WorldConstants.ConstantsOwner.GetComponent <PlayerConstants>(); aConsts = WorldConstants.ConstantsOwner.GetComponent <ActorConstants>(); }
void Start() { PlayProps = GetComponent <PlayerProperties>(); ActorProps = GetComponent <ActorProperties>(); PlayConsts = WorldConstants.ConstantsOwner.GetComponent <PlayerConstants>(); ActorConsts = WorldConstants.ConstantsOwner.GetComponent <ActorConstants>(); }
//methods related to speed regulation and exhaustion management //returns new exhaustion level as a function of ratio of current speed to max speed public static float TickExhaust(float currentExhaust, float currentSpeed, float maxSpeed, PlayerConstants playerConstants) { float speedRatio = currentSpeed / maxSpeed; float randFloat = Random.Range(0.5f, 1.0f); //if player is below half their max speed, regain some energy if (speedRatio <= 0.5f) { return(currentExhaust + (10 * -speedRatio) * randFloat); } return(currentExhaust + (10 * speedRatio) * randFloat); }
public void HandleChatMessage(ServerPlayer sender, MsgMessage message) { // check all the ways we can ingore this if (message == null) { return; } bool isAction = IsMeCommand(message); if (!isAction) { if (AcceptTextCommand != null && AcceptTextCommand(sender, message)) { return; } } else if (message.MessageText.Length < 5) { return; } if (!sender.Allowances.AllowChat) { return; } ChatMessageEventArgs inChat = new ChatMessageEventArgs(); inChat.To = null; inChat.Allow = true; inChat.Filtered = false; inChat.From = sender; inChat.Action = isAction; if (isAction) { inChat.MessageText = message.MessageText.Substring(3); } else { inChat.MessageText = message.MessageText; } if (message.To <= PlayerConstants.MaxUseablePlayerID) { inChat.To = Players.GetPlayerByID(message.To); if (inChat.To == null) { return; } inChat.ToTeam = inChat.To.ActualTeam; inChat.ChatType = ChatMessageEventArgs.ChatMessageTypes.PrivateMessage; } else if (message.To == PlayerConstants.AllPlayersID) { inChat.ChatType = ChatMessageEventArgs.ChatMessageTypes.PublicMessage; } else if (message.To >= PlayerConstants.FirstTeamID && message.To <= PlayerConstants.LastTeamID) { TeamColors toTeam = PlayerConstants.GetTeamColorFromID(message.To); if (toTeam != sender.ActualTeam || Players.GetTeamPlayerCount(toTeam) == 0) { return; } inChat.ToTeam = toTeam; inChat.ChatType = ChatMessageEventArgs.ChatMessageTypes.TeamMessage; } else { foreach (var group in GetGroups()) { if (message.To == group.BroadcastID) { inChat.To = null; inChat.ToGroup = group; inChat.ChatType = ChatMessageEventArgs.ChatMessageTypes.GroupMessage; } } } if (inChat.ChatType == ChatMessageEventArgs.ChatMessageTypes.Unknown) { return; } MessageReceived?.Invoke(this, inChat); if (!inChat.Allow) { return; } PushMessageToFilter(inChat); }
void Start() { player = Camera.main.GetComponent <PlayerConstants>(); cashout = GameObject.Find("cashReadout"); }