Пример #1
0
        public static void Main()
        {
            Debug.Print("Sleeping until PIR stablises, about 10 seconds.");
            Thread.Sleep(10000);
            Debug.Print("Ready....");

            board = new BaseBoard();
            board.Button.Pressed += OnPressedEvent;
            board.Button.Released += OnReleasedEvent;
            board.Sensor.DetectedMotion += OnMotionEvent;

            state = new StandByState(board);
            state.StateChanged += state_StateChanged;

            Thread.Sleep(Timeout.Infinite);
        }
Пример #2
0
		public override void Deserialize( GenericReader reader )
		{
			base.Deserialize( reader );

			int version = reader.ReadInt();

			switch ( version )
			{
				case 0:
				{
					m_Board = (BaseBoard)reader.ReadItem();

					if ( m_Board == null || Parent == null )
						Delete();

					break;
				}
			}
		}
Пример #3
0
 public PieceBlackQueen(BaseBoard board) : base(0x3591, board)
 {
 }
Пример #4
0
		public PieceWhiteBishop( BaseBoard board ) : base( 0x3585, board )
		{
		}
Пример #5
0
 public PieceBlackPawn(BaseBoard board) : base(0x3590, board)
 {
 }
Пример #6
0
 public PieceWhiteKing(BaseBoard board) : base(0x3587, board)
 {
 }
Пример #7
0
 public PieceBlackBishop(BaseBoard board) : base(0x358C, board)
 {
 }
Пример #8
0
 public PieceBlackKnight(BaseBoard board) : base(0x358F, board)
 {
 }
Пример #9
0
 public static bool ValidateDefault(Mobile from, BaseBoard board) =>
 !board.Deleted && (from.AccessLevel >= AccessLevel.GameMaster || from.Alive &&
                    (board.IsChildOf(from.Backpack) || board.RootParent is not Mobile &&
Пример #10
0
 public PieceBlackRook(BaseBoard board) : base(0x358D, board)
 {
 }
Пример #11
0
		public PieceBlackRook( BaseBoard board ) : base( 0x358D, board )
		{
		}
Пример #12
0
 public AlarmSetState(BaseBoard board)
 {
     this.board = board;
 }
Пример #13
0
		public PieceWhiteRook( BaseBoard board ) : base( 0x3586, board )
		{
		}
Пример #14
0
    //메소드가 사용되어야 하는 상황을 구분짓기 위해 두개를 나눔.
    public override void ThrowEvent(string keyData, params object[] datas)
    {
        if (keyData == ConstValue.EventKey_Hit)
        {
            if (OBJECT_STATE == eBaseObjectState.STATE_DIE)
            {
                return;
            }

            if (IS_SUPERARMOR)
            {
                IS_SUPERARMOR = false;
            }

            // 공격 주체의 케릭터
            GameCharacter casterCharacter
                = datas[0] as GameCharacter;
            SkillTemplate skillTemplate =
                datas[1] as SkillTemplate;

            //0625 교준, 현재의 buff를 받기 위함.
            string curBuff = datas[2] as string;

            //0626 교준, 여기에 공격 방향도 받아야 할듯? -> 피의 방향을 위해
            //Vector3 damagedPos = (Vector3)datas[3];
            Quaternion attackDir = (Quaternion)datas[3];

            if (curBuff != eBuffType.NONE.ToString())
            {
                BuffTemplateData buffEffect = BuffManager.Instance.Get(curBuff);
                casterCharacter.CHARACTER_STATUS.AddStatusData("BUFF", buffEffect.STATUS_DATA);
            }



            casterCharacter.CHARACTER_STATUS.AddStatusData("SKILL",
                                                           skillTemplate.STATUS_DATA);
            //데미지 수치를 랜덤값으로 만들면 더 좋다. 규칙을 정한것이지 구조가 아님. 다른곳에서도 처리 가능함.
            double attackDamage = casterCharacter.CHARACTER_STATUS.GetStatusData(eStatusData.ATTACK) - SelfCharacter.CHARACTER_STATUS.GetStatusData(eStatusData.DEFENCE);

            if (attackDamage < 0)
            {
                attackDamage = 0;
            }

            // SelfCharacter.CHARACTER_STATUS.GetStatusData(eStatusData.DEFFENCE);



            casterCharacter.CHARACTER_STATUS.RemoveStatusData("SKILL");


            if (curBuff != eBuffType.NONE.ToString())
            {
                casterCharacter.CHARACTER_STATUS.RemoveStatusData("BUFF");
            }
            //은기 완전 무적상태 추가
            if (IS_INVUL == false)
            {
                if (IS_SUPERARMOR == false)
                {
                    //은기 6.29 콤보게이지 관련 추가(양 조절)
                    if (GameManager.Instance.PLAYER_ACTOR.GetComponent <Player>().ComboSkillSet.COMBO_GAGE < 1)
                    {
                        GameManager.Instance.PLAYER_ACTOR.GetComponent <Player>().ComboSkillSet.COMBO_GAGE      += 0.3f;
                        GameManager.Instance.PLAYER_ACTOR.GetComponent <Player>().ComboSkillSet.POWER_DOWN_STATE = false;
                    }

                    SelfCharacter.IncreaseCurrentHP(-attackDamage);
                }
                Vector3 damagedPos = gameObject.transform.localPosition;

                if (attackDir != null)
                {
                    BloodManager.Instance.CreateBloodParticle(gameObject, damagedPos, attackDir);
                }
                else
                {
                    BloodManager.Instance.CreateBloodParticle(gameObject, damagedPos);
                }
            }
            //재인이형
            // HPBoard
            BaseBoard board = BoardManager.Instance.GetBoardData(this,
                                                                 eBoardType.BOARD_HP);
            if (board != null)
            {
                board.SetData(ConstValue.SetData_HP,
                              GetStatusData(eStatusData.MAX_HP),
                              SelfCharacter.CURRENT_HP);
            }

            //재인이형
            //// Board 초기화
            board = null;

            //// DamageBoard
            //board = BoardManager.Instance.AddBoard(this, eBoardType.BOARD_DAMAGE);
            //if (board != null)
            //	board.SetData(ConstValue.SetData_Damage, attackDamage);

            //건희
            //// 피격 에니메이션
            //AI.ANIMATOR.SetInteger("Hit", 1);
        }
        else if (keyData == ConstValue.EventKey_SelectSkill)
        {
            int       index = (int)datas[0];
            SkillData data  = SelfCharacter.GetSkillByIndex(index);
            SelfCharacter.SELECT_SKILL = data;
        }
        else if (keyData == ConstValue.ActorData_SetTarget)
        {
            TargetObject = datas[0] as BaseObject;
        }
        else if (keyData == ConstValue.EventKey_SelectState)
        {
            if (this.tag != "Player")
            {
                BaseBoard board = BoardManager.Instance.GetBoardData(this,
                                                                     eBoardType.BOARD_STATUS);
                if (board != null)
                {
                    board.SetData(ConstValue.SetData_Status,
                                  (eStateType)datas[0],
                                  (BaseObject)datas[1]);
                }
            }
        }
        else
        {
            base.ThrowEvent(keyData, datas);
        }
    }
Пример #15
0
 public PieceWhiteChecker(BaseBoard board) : base(0x3584, board)
 {
 }
Пример #16
0
 public PieceBlackChecker(BaseBoard board) : base(0x358B, board)
 {
 }
Пример #17
0
		public PieceWhiteChecker( BaseBoard board ) : base( 0x3584, board )
		{
		}
Пример #18
0
		public PieceBlackChecker( BaseBoard board ) : base( 0x358B, board )
		{
		}
Пример #19
0
		public PieceBlackBishop( BaseBoard board ) : base( 0x358C, board )
		{
		}
Пример #20
0
 public PieceWhiteRook(BaseBoard board) : base(0x3586, board)
 {
 }
Пример #21
0
		public PieceWhiteKnight( BaseBoard board ) : base( 0x3588, board )
		{
		}
Пример #22
0
 public PieceWhiteBishop(BaseBoard board) : base(0x3585, board)
 {
 }
Пример #23
0
		public PieceBlackKnight( BaseBoard board ) : base( 0x358F, board )
		{
		}
Пример #24
0
 public PieceWhiteKnight(BaseBoard board) : base(0x3588, board)
 {
 }
Пример #25
0
		public PieceWhitePawn( BaseBoard board ) : base( 0x3589, board )
		{
		}
Пример #26
0
 public PieceWhitePawn(BaseBoard board) : base(0x3589, board)
 {
 }
Пример #27
0
		public PieceBlackPawn( BaseBoard board ) : base( 0x3590, board )
		{
		}
Пример #28
0
 public PieceBlackKing(BaseBoard board) : base(0x358E, board)
 {
 }
Пример #29
0
		public PieceBlackKing( BaseBoard board ) : base( 0x358E, board )
		{
		}
Пример #30
0
 public PieceWhiteQueen(BaseBoard board) : base(0x358A, board)
 {
 }
Пример #31
0
		public PieceWhiteQueen( BaseBoard board ) : base( 0x358A, board )
		{
		}
Пример #32
0
		public BasePiece( int itemID, BaseBoard board ) : base( itemID )
		{
			m_Board = board;
		}
Пример #33
0
		public PieceWhiteKing( BaseBoard board ) : base( 0x3587, board )
		{
		}
Пример #34
0
 public StandByState(BaseBoard board)
 {
     this.board = board;        
 }
Пример #35
0
		public PieceBlackQueen( BaseBoard board ) : base( 0x3591, board )
		{
		}
Пример #36
0
 public BasePiece(int itemID, BaseBoard board)
     : base(itemID)
 {
     Board = board;
 }
Пример #37
0
 public StandByState(BaseBoard board)
 {
     this.board = board;
 }