public override void OnStateEnter()
        {
            OnSetBool?.Invoke(TurningHash, true);

//            OnSoundPlayOneShot?.Invoke(audioLib.ratbag_turning);
            OnSoundPlayInterrupt?.Invoke(audioLib.ratbag_turning);
        }
 public override void OnStateExit()
 {
     OnSetBool?.Invoke(RunningHash, false);
 }
 public override void OnStateEnter()
 {
     OnSetBool?.Invoke(RunningHash, true);
 }
Exemple #4
0
 public override void OnStateExit()
 {
     OnSetBool?.Invoke(GettingUpHash, false);
 }
Exemple #5
0
 public override void OnStateEnter()
 {
     OnSetBool?.Invoke(GettingUpHash, true);
 }
        public override void OnStateExit()
        {
            OnSetBool?.Invoke(TurningHash, false);

            OnStopAudioSource?.Invoke();
        }
Exemple #7
0
 public override void OnStateExit()
 {
     OnSetBool?.Invoke(FlooredHash, false);
 }
Exemple #8
0
 public override void OnStateEnter()
 {
     OnSetBool?.Invoke(FlooredHash, true);
 }
Exemple #9
0
 public override void OnStateExit()
 {
     OnSetBool?.Invoke(IdleHash, false);
 }
Exemple #10
0
 public override void OnStateEnter()
 {
     OnSetBool?.Invoke(IdleHash, true);
 }
Exemple #11
0
        public SystemServer(int port)
        {
            Server = new TCPServer(port);
            Server.Start();
            Server.OnMessageRecive += (sender, mess) =>
            {
                Console.WriteLine(mess);
                if (mess.Contains("IsConnected"))
                {
                    Add((sender as Socket).RemoteEndPoint as IPEndPoint);
                    foreach (var item in MatrixList.Values)
                    {
                        if (!item.IsServer)
                        {
                            Server.Send(item.address, item.ToString(Actor.SystemStatus));
                        }
                    }
                }
                if (mess.Contains("ClientRemoved"))
                {
                    var splitedmess = mess.Split(';');
                    Remove((sender as Socket).RemoteEndPoint as IPEndPoint);
                    foreach (var item in MatrixList.Values)
                    {
                        Console.WriteLine(item.ToString());
                        if (!item.IsServer)
                        {
                            Server.Send(item.address, item.ToString(Actor.SystemStatus));
                        }
                    }
                }
                if (mess.Contains("ballInitiated"))
                {
                    OnSetBool?.Invoke(true);
                    Server.SendAll("ballInitiated");
                }
                if (mess.Equals("Pause"))
                {
                    OnSetPauseResume?.Invoke(false);
                    Server.SendAll("Pause");
                }
                if (mess.Equals("Resume"))
                {
                    OnSetPauseResume?.Invoke(true);
                    Server.SendAll("Resume");
                }
                if (mess.Contains("BallReport"))
                {
                    Ball b = new Ball(mess, 0, out int coll, out int roww, out BallCrossingStatus bcs);
                    switch (bcs)
                    {
                    case BallCrossingStatus.Top:
                        coll--;
                        break;

                    case BallCrossingStatus.Left:
                        roww--;
                        break;

                    case BallCrossingStatus.Right:
                        roww++;
                        break;

                    case BallCrossingStatus.bottom:
                        coll++;
                        break;

                    case BallCrossingStatus.TopRight:
                        coll--;
                        roww++;
                        break;

                    case BallCrossingStatus.TopLeft:
                        coll--;
                        roww--;
                        break;

                    case BallCrossingStatus.ButtomRight:
                        coll++;
                        roww++;
                        break;

                    case BallCrossingStatus.ButtomLeft:
                        coll++;
                        roww--;
                        break;

                    default:
                        break;
                    }
                    ScreenCondition sc = MatrixList.Values.Where(x => x.Col == coll && x.Row == roww).First();
                    if (sc.IsServer)
                    {
                        Server.Send(Server.First, b.ToString(coll, roww, bcs));
                    }
                    else
                    {
                        Server.Send(sc.address, b.ToString(coll, roww, bcs));
                    }
                }
            };
            rnd           = new Random();
            Count         = 1;
            Matrixsize    = (int)Math.Ceiling(Math.Sqrt(Count));
            MatrixList    = new Dictionary <IPEndPoint, ScreenCondition>();
            ServerAddress = new IPEndPoint(IPAddress.Any, 1010);
            MatrixList.Add(ServerAddress, new ScreenCondition
            {
                HasBall  = false,
                Name     = 0,
                IsServer = true,
                Top      = WallStatus.AcceleratorHard,
                Right    = WallStatus.DeceleratorHard,
                Buttom   = WallStatus.AcceleratorHard,
                Left     = WallStatus.DeceleratorHard,
                Col      = 0,
                Row      = 0
            });
        }