Ejemplo n.º 1
0
        /// <summary>
        /// Commande ChangePlayer
        /// </summary>
        /// <param name="command"></param>
        private static void CommandChangePlayer(string[] command)
        {
            if (command.Length != 2)
            {
                AddConsoleLine(string.Format("{0}: command format is incorrect", ConsoleConstants.C_CHANGEPLAYER));
                return;
            }

            VO_Character character = GameCore.Instance.Game.Characters.Find(p => p.Title.ToLower() == command[1]);

            if (character != null)
            {
                VO_RunningScript runningScript = new VO_RunningScript();
                runningScript.ScriptType = Enums.ScriptType.Events;
                runningScript.Lines      = new List <VO_Line>();
                VO_Script_ChangeCurrentCharacter characterScript = new VO_Script_ChangeCurrentCharacter();
                characterScript.Character    = character.Id;
                characterScript.UseOldCoords = true;
                runningScript.Lines.Add(characterScript);
                runningScript.CurrentLine   = runningScript.Lines[0];
                ScriptManager.CurrentScript = runningScript;
            }
            else
            {
                AddConsoleLine(string.Format("{0}: character {1} not found", ConsoleConstants.C_CHANGEPLAYER, command[1]));
            }
        }
 private void ScriptChangeCurrentCharacter_Load(object sender, EventArgs e)
 {
     if (IsAdd == true)
     {
         chgCharacter.CharacterGuid = Guid.Empty;
         chkCurrent.Checked         = true;
         chkCoords.Checked          = false;
         crdCoords.Enabled          = false;
         Character = new VO_Script_ChangeCurrentCharacter();
     }
     else
     {
         chgCharacter.CharacterGuid = Character.Character;
         chkCoords.Checked          = !Character.UseOldCoords;
         chkCurrent.Checked         = Character.UseOldCoords;
         crdCoords.FullCoords       = Character.Coords;
         crdCoords.Coords           = new Rectangle(Character.Coords.Location, new Size());
     }
 }
Ejemplo n.º 3
0
        //Non à mettre dans la méthode du eventactions
        private void ScriptManager_Modify(object sender, EventArgs e)
        {
            if (this.Manager.SelectedNode != null)
            {
                Object CurrentNode = this.Manager.SelectedNode.Tag;
                if (CurrentNode is VO_Script_Message)
                {
                    VO_Script_Message line = (VO_Script_Message)CurrentNode;
                    FormsManager.Instance.DialogManager.CurrentDialog          = line.Dialog;
                    FormsManager.Instance.DialogManager.CurrentDialog.Messages = line.Dialog.Messages;

                    FormsManager.Instance.DialogManager.LoadDialog(FormsManager.Instance.DialogManager.CurrentDialog, Script.ScriptType);

                    DialogResult Result = FormsManager.Instance.DialogManager.ShowDialog();
                    if (Result == DialogResult.OK)
                    {
                        line.Dialog = FormsManager.Instance.DialogManager.CurrentDialog;
                    }
                }
                else if (CurrentNode is VO_Script_Condition)
                {
                    VO_Script_Condition line = (VO_Script_Condition)CurrentNode;
                    FormsManager.Instance.ScriptCondition.Condition = line;
                    if (FormsManager.Instance.ScriptCondition.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        line = FormsManager.Instance.ScriptCondition.Condition;
                    }
                }
                else if (CurrentNode is VO_Script_Loop)
                {
                    VO_Script_Loop line = (VO_Script_Loop)CurrentNode;
                    FormsManager.Instance.ScriptLoop.Loop = line;
                    if (FormsManager.Instance.ScriptLoop.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        line = FormsManager.Instance.ScriptLoop.Loop;
                    }
                }
                else if (CurrentNode is VO_Script_ChoiceMessage)
                {
                    VO_Script_ChoiceMessage line = (VO_Script_ChoiceMessage)CurrentNode;
                    FormsManager.Instance.ScriptChoice.ChoiceMessage = line;
                    if (FormsManager.Instance.ScriptChoice.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        line = FormsManager.Instance.ScriptChoice.ChoiceMessage;
                    }
                }
                else if (CurrentNode is VO_Script_MovePlayer)
                {
                    VO_Script_MovePlayer line = (VO_Script_MovePlayer)CurrentNode;
                    FormsManager.Instance.CoordsManager.SourceResolution = EditorHelper.Instance.GetCurrentStageInstance().Dimensions;
                    FormsManager.Instance.CoordsManager.SourceObject     = new Rectangle(line.Coords.Location, new Size());
                    if (FormsManager.Instance.CoordsManager.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        line.Coords = FormsManager.Instance.CoordsManager.DestinationObject;
                    }
                }
                else if (CurrentNode is VO_Script_ChangePlayerDirection)
                {
                    VO_Script_ChangePlayerDirection line = (VO_Script_ChangePlayerDirection)CurrentNode;
                    FormsManager.Instance.EventActions.ScriptChangePlayerDirection.Direction = line.Direction;
                    if (FormsManager.Instance.EventActions.ScriptChangePlayerDirection.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        line.Direction = FormsManager.Instance.EventActions.ScriptChangePlayerDirection.Direction;
                    }
                }
                else if (CurrentNode is VO_Script_ChangeCharacterDirection)
                {
                    VO_Script_ChangeCharacterDirection line = (VO_Script_ChangeCharacterDirection)CurrentNode;
                    FormsManager.Instance.EventActions.ScriptChangeCharacterDirection.IsAdd              = false;
                    FormsManager.Instance.EventActions.ScriptChangeCharacterDirection.Direction          = line.Direction;
                    FormsManager.Instance.EventActions.ScriptChangeCharacterDirection.CurrentCharacterId = line.CharacterId;
                    if (FormsManager.Instance.EventActions.ScriptChangeCharacterDirection.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        line.Direction   = FormsManager.Instance.EventActions.ScriptChangeCharacterDirection.Direction;
                        line.CharacterId = FormsManager.Instance.EventActions.ScriptChangeCharacterDirection.CurrentCharacterId;
                    }
                }
                else if (CurrentNode is VO_Script_PlayMusic)
                {
                    VO_Script_PlayMusic line = (VO_Script_PlayMusic)CurrentNode;
                    FormsManager.Instance.ResourcesManager.Filter           = GlobalConstants.PROJECT_DIR_MUSICS;
                    FormsManager.Instance.ResourcesManager.SelectedFilePath = line.Music;
                    if (FormsManager.Instance.ResourcesManager.ShowDialog() == DialogResult.OK)
                    {
                        line.Music = FormsManager.Instance.ResourcesManager.SelectedFilePath;
                    }
                }
                else if (CurrentNode is VO_Script_AddItem)
                {
                    VO_Script_AddItem line = (VO_Script_AddItem)CurrentNode;
                    FormsManager.Instance.EventActions.ScriptItem.CharacterGuid = line.Character;
                    FormsManager.Instance.EventActions.ScriptItem.ItemGuid      = line.Item;
                    FormsManager.Instance.EventActions.ScriptItem.IsAdd         = false;
                    if (FormsManager.Instance.EventActions.ScriptItem.ShowDialog() == DialogResult.OK)
                    {
                        line.Character = FormsManager.Instance.EventActions.ScriptItem.CharacterGuid;
                        line.Item      = FormsManager.Instance.EventActions.ScriptItem.ItemGuid;
                    }
                }
                else if (CurrentNode is VO_Script_RemoveItem)
                {
                    VO_Script_RemoveItem line = (VO_Script_RemoveItem)CurrentNode;
                    FormsManager.Instance.EventActions.ScriptItem.CharacterGuid = line.Character;
                    FormsManager.Instance.EventActions.ScriptItem.ItemGuid      = line.Item;
                    FormsManager.Instance.EventActions.ScriptItem.IsAdd         = false;
                    if (FormsManager.Instance.EventActions.ScriptItem.ShowDialog() == DialogResult.OK)
                    {
                        line.Character = FormsManager.Instance.EventActions.ScriptItem.CharacterGuid;
                        line.Item      = FormsManager.Instance.EventActions.ScriptItem.ItemGuid;
                    }
                }
                else if (CurrentNode is VO_Script_ChangeMusicFrequency)
                {
                    VO_Script_ChangeMusicFrequency line = (VO_Script_ChangeMusicFrequency)CurrentNode;
                    FormsManager.Instance.EventActions.ScriptMusicFrequency.Frequency = line.Frequency;
                    FormsManager.Instance.EventActions.ScriptMusicFrequency.IsAdd     = false;
                    if (FormsManager.Instance.EventActions.ScriptMusicFrequency.ShowDialog() == DialogResult.OK)
                    {
                        line.Frequency = FormsManager.Instance.EventActions.ScriptMusicFrequency.Frequency;
                    }
                }
                else if (CurrentNode is VO_Script_Wait)
                {
                    VO_Script_Wait line = (VO_Script_Wait)CurrentNode;
                    FormsManager.Instance.EventActions.ScriptWait.WaitTime = line.SecondsToWait;
                    FormsManager.Instance.EventActions.ScriptWait.IsAdd    = false;
                    if (FormsManager.Instance.EventActions.ScriptWait.ShowDialog() == DialogResult.OK)
                    {
                        line.SecondsToWait = FormsManager.Instance.EventActions.ScriptWait.WaitTime;
                    }
                }
                else if (CurrentNode is VO_Script_ChangeVariable)
                {
                    VO_Script_ChangeVariable line = (VO_Script_ChangeVariable)CurrentNode;
                    FormsManager.Instance.EventActions.ScriptVariable.CurrentVariable = line;
                    FormsManager.Instance.EventActions.ScriptVariable.IsAdd           = false;
                    if (FormsManager.Instance.EventActions.ScriptVariable.ShowDialog() == DialogResult.OK)
                    {
                        line = FormsManager.Instance.EventActions.ScriptVariable.CurrentVariable;
                    }
                }
                else if (CurrentNode is VO_Script_PressSwitch)
                {
                    VO_Script_PressSwitch line = (VO_Script_PressSwitch)CurrentNode;
                    FormsManager.Instance.EventActions.ScriptPressSwitch.Switch = line;
                    FormsManager.Instance.EventActions.ScriptPressSwitch.IsAdd  = false;
                    if (FormsManager.Instance.EventActions.ScriptPressSwitch.ShowDialog() == DialogResult.OK)
                    {
                        line.Button   = FormsManager.Instance.EventActions.ScriptPressSwitch.Switch.Button;
                        line.IsActive = FormsManager.Instance.EventActions.ScriptPressSwitch.Switch.IsActive;
                    }
                }
                else if (CurrentNode is VO_Script_Random)
                {
                    VO_Script_Random line = (VO_Script_Random)CurrentNode;
                    FormsManager.Instance.EventActions.ScriptRandom.IsAdd      = false;
                    FormsManager.Instance.EventActions.ScriptRandom.MaxValue   = line.MaxValue;
                    FormsManager.Instance.EventActions.ScriptRandom.MinValue   = line.MinValue;
                    FormsManager.Instance.EventActions.ScriptRandom.VariableId = line.Variable;
                    if (FormsManager.Instance.EventActions.ScriptRandom.ShowDialog() == DialogResult.OK)
                    {
                        line.MaxValue = FormsManager.Instance.EventActions.ScriptRandom.MaxValue;
                        line.MinValue = FormsManager.Instance.EventActions.ScriptRandom.MinValue;
                        line.Variable = FormsManager.Instance.EventActions.ScriptRandom.VariableId;
                    }
                }
                else if (CurrentNode is VO_Script_PlaySound)
                {
                    VO_Script_PlaySound line = (VO_Script_PlaySound)CurrentNode;
                    FormsManager.Instance.ResourcesManager.Filter           = GlobalConstants.PROJECT_DIR_EFFECTS;
                    FormsManager.Instance.ResourcesManager.SelectedFilePath = line.Sound;
                    if (FormsManager.Instance.ResourcesManager.ShowDialog() == DialogResult.OK)
                    {
                        line.Sound = FormsManager.Instance.ResourcesManager.SelectedFilePath;
                    }
                }
                else if (CurrentNode is VO_Script_ChangeCurrentCharacter)
                {
                    VO_Script_ChangeCurrentCharacter line = (VO_Script_ChangeCurrentCharacter)CurrentNode;
                    FormsManager.Instance.EventActions.ScriptChangeCurrentCharacter.IsAdd = false;
                    FormsManager.Instance.EventActions.ScriptChangeCurrentCharacter.Character.Character    = line.Character;
                    FormsManager.Instance.EventActions.ScriptChangeCurrentCharacter.Character.Coords       = line.Coords;
                    FormsManager.Instance.EventActions.ScriptChangeCurrentCharacter.Character.UseOldCoords = line.UseOldCoords;
                    if (FormsManager.Instance.EventActions.ScriptChangeCurrentCharacter.ShowDialog() == DialogResult.OK)
                    {
                        line.Character    = FormsManager.Instance.EventActions.ScriptChangeCurrentCharacter.Character.Character;
                        line.Coords       = FormsManager.Instance.EventActions.ScriptChangeCurrentCharacter.Character.Coords;
                        line.UseOldCoords = FormsManager.Instance.EventActions.ScriptChangeCurrentCharacter.Character.UseOldCoords;
                    }
                }
                else if (CurrentNode is VO_Script_SetAnchor)
                {
                    VO_Script_SetAnchor line = (VO_Script_SetAnchor)CurrentNode;
                    FormsManager.Instance.EventActions.ScriptGetSetAnchor.IsAdd  = false;
                    FormsManager.Instance.EventActions.ScriptGetSetAnchor.Anchor = line.Anchor;
                    if (FormsManager.Instance.EventActions.ScriptGetSetAnchor.ShowDialog() == DialogResult.OK)
                    {
                        line.Anchor = FormsManager.Instance.EventActions.ScriptGetSetAnchor.Anchor;
                    }
                }
                else if (CurrentNode is VO_Script_GoToAnchor)
                {
                    VO_Script_GoToAnchor line = (VO_Script_GoToAnchor)CurrentNode;
                    FormsManager.Instance.EventActions.ScriptGetSetAnchor.IsAdd  = false;
                    FormsManager.Instance.EventActions.ScriptGetSetAnchor.Anchor = line.Anchor;
                    if (FormsManager.Instance.EventActions.ScriptGetSetAnchor.ShowDialog() == DialogResult.OK)
                    {
                        line.Anchor = FormsManager.Instance.EventActions.ScriptGetSetAnchor.Anchor;
                    }
                }
                else if (CurrentNode is VO_Script_Teleport)
                {
                    VO_Script_Teleport line = (VO_Script_Teleport)CurrentNode;
                    FormsManager.Instance.CoordsManager.SourceFullObject = new VO_Coords(line.Coords.Location, line.Coords.Map);
                    FormsManager.Instance.CoordsManager.UseStages        = true;
                    FormsManager.Instance.CoordsManager.SourceObject     = new Rectangle(new Point(), new Size());
                    if (FormsManager.Instance.CoordsManager.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        line.Coords = FormsManager.Instance.CoordsManager.DestinationObject;
                    }
                }
                else if (CurrentNode is VO_Script_StopCharacterMovements)
                {
                    VO_Script_StopCharacterMovements line = (VO_Script_StopCharacterMovements)CurrentNode;
                    FormsManager.Instance.EventActions.ScriptStopCharacterMovement.IsAdd = false;
                    FormsManager.Instance.EventActions.ScriptStopCharacterMovement.CurrentCharacter.Id = line.Character;
                    if (FormsManager.Instance.EventActions.ScriptStopCharacterMovement.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        line.Character = FormsManager.Instance.EventActions.ScriptStopCharacterMovement.CurrentCharacter.Id;
                    }
                }
                else if (CurrentNode is VO_Script_MoveCamera)
                {
                    VO_Script_MoveCamera line = (VO_Script_MoveCamera)CurrentNode;
                    FormsManager.Instance.EventActions.ScriptMoveCamera.MoveCamera                = new VO_Script_MoveCamera();
                    FormsManager.Instance.EventActions.ScriptMoveCamera.MoveCamera.Coords         = line.Coords;
                    FormsManager.Instance.EventActions.ScriptMoveCamera.MoveCamera.UseImmediately = line.UseImmediately;
                    FormsManager.Instance.EventActions.ScriptMoveCamera.MoveCamera.Speed          = line.Speed;
                    if (FormsManager.Instance.EventActions.ScriptMoveCamera.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        line.Coords         = FormsManager.Instance.EventActions.ScriptMoveCamera.MoveCamera.Coords;
                        line.Speed          = FormsManager.Instance.EventActions.ScriptMoveCamera.MoveCamera.Speed;
                        line.UseImmediately = FormsManager.Instance.EventActions.ScriptMoveCamera.MoveCamera.UseImmediately;
                    }
                }
                else if (CurrentNode is VO_Script_MoveCharacter)
                {
                    VO_Script_MoveCharacter line = (VO_Script_MoveCharacter)CurrentNode;
                    FormsManager.Instance.EventActions.ScriptMoveCharacter.MoveCharacter           = new VO_Script_MoveCharacter();
                    FormsManager.Instance.EventActions.ScriptMoveCharacter.MoveCharacter.Coords    = line.Coords;
                    FormsManager.Instance.EventActions.ScriptMoveCharacter.MoveCharacter.Character = line.Character;
                    if (FormsManager.Instance.EventActions.ScriptMoveCharacter.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        line.Coords    = FormsManager.Instance.EventActions.ScriptMoveCharacter.MoveCharacter.Coords;
                        line.Character = FormsManager.Instance.EventActions.ScriptMoveCharacter.MoveCharacter.Character;
                    }
                }
                else if (CurrentNode is VO_Script_FocusOnCharacter)
                {
                    VO_Script_FocusOnCharacter line = (VO_Script_FocusOnCharacter)CurrentNode;
                    FormsManager.Instance.EventActions.ScriptCameraFocusOnCharacter.FocusOnCharacter                = new VO_Script_FocusOnCharacter();
                    FormsManager.Instance.EventActions.ScriptCameraFocusOnCharacter.FocusOnCharacter.Character      = line.Character;
                    FormsManager.Instance.EventActions.ScriptCameraFocusOnCharacter.FocusOnCharacter.UseImmediately = line.UseImmediately;
                    FormsManager.Instance.EventActions.ScriptCameraFocusOnCharacter.FocusOnCharacter.Speed          = line.Speed;
                    if (FormsManager.Instance.EventActions.ScriptCameraFocusOnCharacter.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        line.Character      = FormsManager.Instance.EventActions.ScriptCameraFocusOnCharacter.FocusOnCharacter.Character;
                        line.Speed          = FormsManager.Instance.EventActions.ScriptCameraFocusOnCharacter.FocusOnCharacter.Speed;
                        line.UseImmediately = FormsManager.Instance.EventActions.ScriptCameraFocusOnCharacter.FocusOnCharacter.UseImmediately;
                    }
                }
                else if (CurrentNode is VO_Script_FocusOnAnimation)
                {
                    VO_Script_FocusOnAnimation line = (VO_Script_FocusOnAnimation)CurrentNode;
                    FormsManager.Instance.EventActions.ScriptCameraFocusOnAnimation.FocusOnAnimation                = new VO_Script_FocusOnAnimation();
                    FormsManager.Instance.EventActions.ScriptCameraFocusOnAnimation.FocusOnAnimation.Animation      = line.Animation;
                    FormsManager.Instance.EventActions.ScriptCameraFocusOnAnimation.FocusOnAnimation.UseImmediately = line.UseImmediately;
                    FormsManager.Instance.EventActions.ScriptCameraFocusOnAnimation.FocusOnAnimation.Speed          = line.Speed;
                    if (FormsManager.Instance.EventActions.ScriptCameraFocusOnAnimation.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        line.Animation      = FormsManager.Instance.EventActions.ScriptCameraFocusOnAnimation.FocusOnAnimation.Animation;
                        line.Speed          = FormsManager.Instance.EventActions.ScriptCameraFocusOnAnimation.FocusOnAnimation.Speed;
                        line.UseImmediately = FormsManager.Instance.EventActions.ScriptCameraFocusOnAnimation.FocusOnAnimation.UseImmediately;
                    }
                }
                else if (CurrentNode is VO_Script_AddPlayerAction)
                {
                    VO_Script_AddPlayerAction line = (VO_Script_AddPlayerAction)CurrentNode;
                    FormsManager.Instance.EventActions.ScriptAddPlayerAction.IsAdd       = false;
                    FormsManager.Instance.EventActions.ScriptAddPlayerAction.ActionId    = line.ActionId;
                    FormsManager.Instance.EventActions.ScriptAddPlayerAction.CharacterId = line.CharacterId;
                    if (FormsManager.Instance.EventActions.ScriptAddPlayerAction.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        line.ActionId    = FormsManager.Instance.EventActions.ScriptAddPlayerAction.ActionId;
                        line.CharacterId = FormsManager.Instance.EventActions.ScriptAddPlayerAction.CharacterId;
                    }
                }
                else if (CurrentNode is VO_Script_RemovePlayerAction)
                {
                    VO_Script_RemovePlayerAction line = (VO_Script_RemovePlayerAction)CurrentNode;
                    FormsManager.Instance.EventActions.ScriptAddPlayerAction.IsAdd       = false;
                    FormsManager.Instance.EventActions.ScriptAddPlayerAction.ActionId    = line.ActionId;
                    FormsManager.Instance.EventActions.ScriptAddPlayerAction.CharacterId = line.CharacterId;
                    if (FormsManager.Instance.EventActions.ScriptAddPlayerAction.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        line.ActionId    = FormsManager.Instance.EventActions.ScriptAddPlayerAction.ActionId;
                        line.CharacterId = FormsManager.Instance.EventActions.ScriptAddPlayerAction.CharacterId;
                    }
                }
                else if (CurrentNode is VO_Script_CallGlobalEvent)
                {
                    VO_Script_CallGlobalEvent line = (VO_Script_CallGlobalEvent)CurrentNode;
                    FormsManager.Instance.EventActions.ScriptCallGlobalEvent.IsAdd         = false;
                    FormsManager.Instance.EventActions.ScriptCallGlobalEvent.GlobalEventId = line.GlobalEvent;
                    if (FormsManager.Instance.EventActions.ScriptCallGlobalEvent.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        line.GlobalEvent = FormsManager.Instance.EventActions.ScriptCallGlobalEvent.GlobalEventId;
                    }
                }
                else if (CurrentNode is VO_Script_ChangePlayerSpeed)
                {
                    VO_Script_ChangePlayerSpeed line = (VO_Script_ChangePlayerSpeed)CurrentNode;
                    FormsManager.Instance.EventActions.ScriptChangePlayerSpeed.IsAdd       = false;
                    FormsManager.Instance.EventActions.ScriptChangePlayerSpeed.CharacterId = line.CharacterId;
                    FormsManager.Instance.EventActions.ScriptChangePlayerSpeed.Frequency   = line.Speed.IntValue;
                    if (FormsManager.Instance.EventActions.ScriptChangePlayerSpeed.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        line.Speed.IntValue = FormsManager.Instance.EventActions.ScriptChangePlayerSpeed.Frequency;
                        line.CharacterId    = FormsManager.Instance.EventActions.ScriptChangePlayerSpeed.CharacterId;
                    }
                }
                else if (CurrentNode is VO_Script_Comment)
                {
                    VO_Script_Comment line = (VO_Script_Comment)CurrentNode;
                    FormsManager.Instance.EventActions.ScriptAddComment.IsAdd   = false;
                    FormsManager.Instance.EventActions.ScriptAddComment.Comment = line.Comment;
                    if (FormsManager.Instance.EventActions.ScriptAddComment.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        line.Comment = FormsManager.Instance.EventActions.ScriptAddComment.Comment;
                    }
                }
                else if (CurrentNode is VO_Script_ChangeHP)
                {
                    VO_Script_ChangeHP line = (VO_Script_ChangeHP)CurrentNode;
                    FormsManager.Instance.EventActions.ScriptChangePlayerHP.IsAdd       = false;
                    FormsManager.Instance.EventActions.ScriptChangePlayerHP.CharacterId = line.CharacterId;
                    FormsManager.Instance.EventActions.ScriptChangePlayerHP.Operator    = line.Operator;
                    FormsManager.Instance.EventActions.ScriptChangePlayerHP.Value       = line.Value;
                    if (FormsManager.Instance.EventActions.ScriptChangePlayerHP.ShowDialog() == DialogResult.OK)
                    {
                        line.CharacterId = FormsManager.Instance.EventActions.ScriptChangePlayerHP.CharacterId;
                        line.Operator    = FormsManager.Instance.EventActions.ScriptChangePlayerHP.Operator;
                        line.Value       = FormsManager.Instance.EventActions.ScriptChangePlayerHP.Value;
                    }
                }
                else if (CurrentNode is VO_Script_ChangeMaxHP)
                {
                    VO_Script_ChangeMaxHP line = (VO_Script_ChangeMaxHP)CurrentNode;
                    FormsManager.Instance.EventActions.ScriptChangePlayerHP.IsAdd       = false;
                    FormsManager.Instance.EventActions.ScriptChangePlayerHP.CharacterId = line.CharacterId;
                    FormsManager.Instance.EventActions.ScriptChangePlayerHP.Operator    = line.Operator;
                    FormsManager.Instance.EventActions.ScriptChangePlayerHP.Value       = line.Value;
                    if (FormsManager.Instance.EventActions.ScriptChangePlayerHP.ShowDialog() == DialogResult.OK)
                    {
                        line.CharacterId = FormsManager.Instance.EventActions.ScriptChangePlayerHP.CharacterId;
                        line.Operator    = FormsManager.Instance.EventActions.ScriptChangePlayerHP.Operator;
                        line.Value       = FormsManager.Instance.EventActions.ScriptChangePlayerHP.Value;
                    }
                }
                else if (CurrentNode is VO_Script_ChangeCharacterAnimFrequency)
                {
                    VO_Script_ChangeCharacterAnimFrequency line = (VO_Script_ChangeCharacterAnimFrequency)CurrentNode;
                    FormsManager.Instance.EventActions.ScriptCharacterAnimationFrequency.IsAdd         = false;
                    FormsManager.Instance.EventActions.ScriptCharacterAnimationFrequency.CharacterId   = line.Character;
                    FormsManager.Instance.EventActions.ScriptCharacterAnimationFrequency.AnimationType = line.AnimationType;
                    FormsManager.Instance.EventActions.ScriptCharacterAnimationFrequency.Frequency     = line.Frequency.IntValue;
                    if (FormsManager.Instance.EventActions.ScriptCharacterAnimationFrequency.ShowDialog() == DialogResult.OK)
                    {
                        line.Character          = FormsManager.Instance.EventActions.ScriptCharacterAnimationFrequency.CharacterId;
                        line.AnimationType      = FormsManager.Instance.EventActions.ScriptCharacterAnimationFrequency.AnimationType;
                        line.Frequency.IntValue = FormsManager.Instance.EventActions.ScriptCharacterAnimationFrequency.Frequency;
                    }
                }
                else if (CurrentNode is VO_Script_FreezeCharacterAnimation)
                {
                    VO_Script_FreezeCharacterAnimation line = (VO_Script_FreezeCharacterAnimation)CurrentNode;
                    FormsManager.Instance.EventActions.ScriptFreezeCharacterAnimation.IsAdd         = false;
                    FormsManager.Instance.EventActions.ScriptFreezeCharacterAnimation.CharacterId   = line.Character;
                    FormsManager.Instance.EventActions.ScriptFreezeCharacterAnimation.AnimationType = line.AnimationType;
                    FormsManager.Instance.EventActions.ScriptFreezeCharacterAnimation.AllAnimation  = line.FreezeAll;
                    if (FormsManager.Instance.EventActions.ScriptFreezeCharacterAnimation.ShowDialog() == DialogResult.OK)
                    {
                        line.Character     = FormsManager.Instance.EventActions.ScriptFreezeCharacterAnimation.CharacterId;
                        line.AnimationType = FormsManager.Instance.EventActions.ScriptFreezeCharacterAnimation.AnimationType;
                        line.FreezeAll     = FormsManager.Instance.EventActions.ScriptFreezeCharacterAnimation.AllAnimation;
                    }
                }
                else if (CurrentNode is VO_Script_FreeCharacterAnimation)
                {
                    VO_Script_FreeCharacterAnimation line = (VO_Script_FreeCharacterAnimation)CurrentNode;
                    FormsManager.Instance.EventActions.ScriptFreeCharacterAnimation.IsAdd         = false;
                    FormsManager.Instance.EventActions.ScriptFreeCharacterAnimation.CharacterId   = line.Character;
                    FormsManager.Instance.EventActions.ScriptFreeCharacterAnimation.AnimationType = line.AnimationType;
                    FormsManager.Instance.EventActions.ScriptFreeCharacterAnimation.AllAnimation  = line.FreeAll;
                    if (FormsManager.Instance.EventActions.ScriptFreeCharacterAnimation.ShowDialog() == DialogResult.OK)
                    {
                        line.Character     = FormsManager.Instance.EventActions.ScriptFreeCharacterAnimation.CharacterId;
                        line.AnimationType = FormsManager.Instance.EventActions.ScriptFreeCharacterAnimation.AnimationType;
                        line.FreeAll       = FormsManager.Instance.EventActions.ScriptFreeCharacterAnimation.AllAnimation;
                    }
                }
                else if (CurrentNode is VO_Script_FreezePlayerAnimation)
                {
                    VO_Script_FreezePlayerAnimation line = (VO_Script_FreezePlayerAnimation)CurrentNode;
                    FormsManager.Instance.EventActions.ScriptFreezePlayerAnimation.IsAdd         = false;
                    FormsManager.Instance.EventActions.ScriptFreezePlayerAnimation.CharacterId   = line.Character;
                    FormsManager.Instance.EventActions.ScriptFreezePlayerAnimation.AnimationType = line.AnimationType;
                    FormsManager.Instance.EventActions.ScriptFreezePlayerAnimation.AllAnimation  = line.FreezeAll;
                    if (FormsManager.Instance.EventActions.ScriptFreezePlayerAnimation.ShowDialog() == DialogResult.OK)
                    {
                        line.Character     = FormsManager.Instance.EventActions.ScriptFreezePlayerAnimation.CharacterId;
                        line.AnimationType = FormsManager.Instance.EventActions.ScriptFreezePlayerAnimation.AnimationType;
                        line.FreezeAll     = FormsManager.Instance.EventActions.ScriptFreezePlayerAnimation.AllAnimation;
                    }
                }
                else if (CurrentNode is VO_Script_FreePlayerAnimation)
                {
                    VO_Script_FreePlayerAnimation line = (VO_Script_FreePlayerAnimation)CurrentNode;
                    FormsManager.Instance.EventActions.ScriptFreePlayerAnimation.IsAdd         = false;
                    FormsManager.Instance.EventActions.ScriptFreePlayerAnimation.CharacterId   = line.Character;
                    FormsManager.Instance.EventActions.ScriptFreePlayerAnimation.AnimationType = line.AnimationType;
                    FormsManager.Instance.EventActions.ScriptFreePlayerAnimation.AllAnimation  = line.FreeAll;
                    if (FormsManager.Instance.EventActions.ScriptFreePlayerAnimation.ShowDialog() == DialogResult.OK)
                    {
                        line.Character     = FormsManager.Instance.EventActions.ScriptFreePlayerAnimation.CharacterId;
                        line.AnimationType = FormsManager.Instance.EventActions.ScriptFreePlayerAnimation.AnimationType;
                        line.FreeAll       = FormsManager.Instance.EventActions.ScriptFreePlayerAnimation.AllAnimation;
                    }
                }
                else if (CurrentNode is VO_Script_ChangePlayerAnimation)
                {
                    VO_Script_ChangePlayerAnimation line = (VO_Script_ChangePlayerAnimation)CurrentNode;
                    FormsManager.Instance.EventActions.ScriptChangePlayerAnimation.IsAdd                  = false;
                    FormsManager.Instance.EventActions.ScriptChangePlayerAnimation.CharacterId            = line.Character;
                    FormsManager.Instance.EventActions.ScriptChangePlayerAnimation.Loop                   = line.Loop;
                    FormsManager.Instance.EventActions.ScriptChangePlayerAnimation.AnimationType          = line.AnimationType;
                    FormsManager.Instance.EventActions.ScriptChangePlayerAnimation.CharacterAnimationType = line.Animation;
                    if (FormsManager.Instance.EventActions.ScriptChangePlayerAnimation.ShowDialog() == DialogResult.OK)
                    {
                        line.Character     = FormsManager.Instance.EventActions.ScriptChangePlayerAnimation.CharacterId;
                        line.AnimationType = FormsManager.Instance.EventActions.ScriptChangePlayerAnimation.AnimationType;
                        line.Animation     = FormsManager.Instance.EventActions.ScriptChangePlayerAnimation.CharacterAnimationType;
                        line.Loop          = FormsManager.Instance.EventActions.ScriptChangePlayerAnimation.Loop;
                    }
                }
                else if (CurrentNode is VO_Script_LookForwardPlayer)
                {
                    VO_Script_LookForwardPlayer line = (VO_Script_LookForwardPlayer)CurrentNode;
                    FormsManager.Instance.EventActions.ScriptLookForwardPlayer.IsAdd       = false;
                    FormsManager.Instance.EventActions.ScriptLookForwardPlayer.CharacterId = line.Character;
                    if (FormsManager.Instance.EventActions.ScriptLookForwardPlayer.ShowDialog() == DialogResult.OK)
                    {
                        line.Character = FormsManager.Instance.EventActions.ScriptLookForwardPlayer.CharacterId;
                    }
                }
                if (ScriptUpdated != null)
                {
                    this.ScriptUpdated(this, new EventArgs());
                }
                LoadScript(Script);
            }
        }