public void SetColorMode(Modes newMode) { // Sets "newMode" to whatever new mode is active if (newMode == ColorMode) { return; } Debug.Log("From " + ColorMode + " to " + newMode); // Stop the current mode, before switching GetCurrentMode().Stop(); ColorMode = newMode; // Start the new mode GetCurrentMode().Begin(); PlayerPrefs.SetInt(COLOR_MODE, (int)ColorMode); PlayerPrefs.Save(); if (OnModeChange != null) { OnModeChange.Invoke(ColorMode); } }
private void ChangeMode(ManipulationMode newMode) { if (newMode == Mode) { return; } var oldMode = Mode; Mode = newMode; OnModeChange?.Invoke(oldMode, newMode); //Debug.Log(newMode); }
public void Return() { ShowingSpecific = false; Board.AcceptSelections = true; Post.AcceptSelections = false; Board.Fade(1f); Post.Fade(0f); OnModeChange?.Invoke(0); GameFacade.Screens.Tween.To(this, 0.66f, new Dictionary <string, float>() { { "THeight", 610 } }, TweenQuad.EaseOut); }
public void SelectedPost(BulletinItem item) { ShowingSpecific = true; Board.AcceptSelections = false; Board.Fade(0f); Post.AcceptSelections = true; Post.SetPost(item); Post.Fade(1f); OnModeChange?.Invoke((item == null) ? 2 : 1); GameFacade.Screens.Tween.To(this, 0.66f, new Dictionary <string, float>() { { "THeight", 550 } }, TweenQuad.EaseOut); }
internal void PushCommand(Command cmd) { if (cmd.Source == CommandSource.Client) { return; } switch (cmd.Token) { case "JCH": { var jch = cmd as Server_JCH_ChannelJoin; var character = Connection.GetOrCreateCharacter(jch.Character.Identity); if (!_Characters.Contains(character)) { _Characters.Add(character); } if (!string.IsNullOrEmpty(jch.Title)) { _Title = jch.Title; Joined = true; } else { OnUserJoin?.Invoke(this, new ChannelUserEntryEventArgs(this, character, jch)); } } return; case "LCH": { var lch = cmd as Server_LCH_ChannelLeave; var character = GetCharacter(lch.Character); _Characters.Remove(character); if (character.Name == Connection.LocalCharacter.Name) { Dispose(); } else { OnUserLeave?.Invoke(this, new ChannelUserEntryEventArgs(this, character, lch)); } } return; case "ICH": { var ich = cmd as Server_ICH_ChannelInitialData; _ChannelMode = ich.Mode; Joined = true; foreach (var user in ich.Users) { var ch = GetCharacter(user.Identity); if (!_Characters.Contains(ch)) { _Characters.Add(ch); } } } return; case "COL": { var col = cmd as Server_COL_ChannelGetOPs; foreach (var op in col.OPs) { if (!string.IsNullOrWhiteSpace(op)) { _OPs.Add(GetCharacter(op)); } } } return; case "CDS": { var cds = cmd as Server_CDS_ChannelChangeDescription; OnDescriptionChange?.Invoke(this, new ChannelEntryEventArgs <string>(this, cds.Description, cds)); _Description = cds.Description; } return; case "RMO": { var rmo = cmd as Server_RMO_ChannelSetMode; OnModeChange?.Invoke(this, new ChannelEntryEventArgs <ChannelMode>(this, rmo.Mode, rmo)); _ChannelMode = rmo.Mode; } return; case "CSO": { var cso = cmd as Server_CSO_ChannelSetOwner; OnOwnerChange?.Invoke(this, new ChannelEntryEventArgs <Character>(this, GetCharacter(cso.Character), cso)); _OwnerName = cso.Character; } return; case "RST": { var rst = cmd as Server_RST_ChannelSetStatus; OnStatusChange?.Invoke(this, new ChannelEntryEventArgs <ChannelStatus>(this, rst.Status, rst)); _Status = rst.Status; } return; case "COA": { var coa = cmd as Server_COA_ChannelMakeOP; var character = GetCharacter(coa.Character); _OPs.Add(character); OnOPAdded?.Invoke(this, new ChannelUserEntryEventArgs(this, character, coa)); } return; case "COR": { var cor = cmd as Server_COR_ChannelRemoveOP; var character = GetCharacter(cor.Character); _OPs.Remove(character); OnOPRemoved?.Invoke(this, new ChannelUserEntryEventArgs(this, character, cor)); } return; case "CKU": { var cku = cmd as Server_CKU_ChannelKickCharacter; var character = GetCharacter(cku.Character); _Characters.Remove(character); OnUserKicked?.Invoke(this, new ChannelAdminActionEventArgs(this, character, GetCharacter(cku.OP), cku)); } return; case "CBU": { var cbu = cmd as Server_CBU_ChannelBanCharacter; var character = GetCharacter(cbu.Character); _Characters.Remove(character); _Banlist.Add(character); OnUserBanned?.Invoke(this, new ChannelAdminActionEventArgs(this, character, GetCharacter(cbu.OP), cbu)); } return; case "CUB": { var cub = cmd as Server_CUB_ChannelUnbanCharacter; var character = GetCharacter(cub.Character); _Banlist.Remove(character); OnUserUnbanned?.Invoke(this, new ChannelAdminActionEventArgs(this, character, GetCharacter(cub.OP), cub)); } return; case "CTU": { var ctu = cmd as Server_CTU_ChannelTimeoutCharacter; var character = GetCharacter(ctu.Character); _Characters.Remove(character); OnUserTimedout?.Invoke(this, new ChannelAdminActionEventArgs(this, character, GetCharacter(ctu.OP), ctu)); } return; case "MSG": { var msg = cmd as Server_MSG_ChannelChatMessage; OnChatMessage?.Invoke(this, new ChannelUserMessageEventArgs(this, GetCharacter(msg.Character), msg.Message, msg)); } return; case "LRP": { var lrp = cmd as Server_LRP_ChannelLFRPMessage; OnLFRPMessage?.Invoke(this, new ChannelUserMessageEventArgs(this, GetCharacter(lrp.Character), lrp.AD, lrp)); } return; case "RLL": { var rll = cmd as Server_RLL_ChannelRollMessage; OnRollMessage?.Invoke(this, new ChannelUserMessageEventArgs(this, GetCharacter(rll.Character), rll.Message, rll)); } return; case "SYS": { var sys = cmd as Server_SYS_ChatSYSMessage; OnSYSMessage?.Invoke(this, new ChannelEntryEventArgs <string>(this, sys.Message, sys)); } return; } }
public void EmitModeChange(ChallengeMode mode) { OnModeChange?.Invoke(this, new Ps2EventArgs <ChallengeMode>(mode)); }
public virtual void SetMode(WIMode mode) { if (mDestroyed) { return; } if (!Is(WILoadState.Initialized | WILoadState.PreparingToUnload) || mode == WIMode.None) { return; } if (IsTemplate) { return; } Props.Local.PreviousMode = Props.Local.Mode; Props.Local.Mode = mode; switch (mode) { case WIMode.World: OnSetWorldMode(false); break; case WIMode.Hidden: OnSetHiddenMode(); break; case WIMode.Destroyed: OnSetDestroyedMode(); break; case WIMode.Frozen: OnSetWorldMode(true); break; case WIMode.Equipped: OnSetEquippedMode(); break; case WIMode.RemovedFromGame: StartCoroutine(OnSetRemovedMode()); break; default: //stacked, crafting, etc. all handle themselves //just set the mode break; } //we don't bother to check if we're already in this mode //sometimes calling mode is like a 'reset' button and we //don't want to prevent that from happening if (mode != WIMode.RemovedFromGame) { try { OnModeChange.SafeInvoke(); } catch (Exception e) { Debug.LogError("Exception when changing mode, proceeding normally: " + e.ToString()); } } }