Ejemplo n.º 1
0
 public Deferred SelectCharacter(Account account, Character character)
 {
     if (account == null)
     {
         Debug.LogError("NULL ACCOUNT PASSED IN!");
     }
     CATEventManager.FireGlobalEvent(gameObject, "BeforeSelectCharacter", character);
     for (int index = 0; index < connections.Count; ++index)
     {
         if (connections[index].account != null && connections[index].account.username == account.username)
         {
             connections[index].character = character;
             if (connections[index].player != null)
             {
                 var pc = connections[index].player.GetComponent <PlayerCharacter>();
                 if (pc != null)
                 {
                     pc.character       = character;
                     pc.gameObject.name = "Player - " + account.username + " - " + character.name;
                 }
             }
         }
     }
     Debug.Log("Selecting " + account.username + " - " + character.name);
     CATEventManager.FireGlobalEvent(gameObject, "OnSelectCharacter", new AccountCharacter(account, character));
     return(Deferred.Succeed(character));
 }
Ejemplo n.º 2
0
        private void CmdSendServerEventFloat(string eventName, float value)
        {
            CATEventManager sm = GetComponent <StateMachine>();

            if (sm == null)
            {
                sm = GetComponent <CATEventManager>();
            }
            sm.FireEvent(eventName, value);
        }
Ejemplo n.º 3
0
        private void RpcSendEventBool(string eventName, bool value)
        {
            CATEventManager sm = GetComponent <StateMachine>();

            if (sm == null)
            {
                sm = GetComponent <CATEventManager>();
            }
            sm.FireEvent(eventName, value);
        }
Ejemplo n.º 4
0
        public Deferred CreateCharacter(Account account, string name)
        {
            var newChar = new Character();

            newChar.name = name;
            return(newChar.Save(account).AddCallback(delegate(object res, object[] args)
            {
                CATEventManager.FireGlobalEvent(gameObject, "CharactersChanged", null);
                return res;
            }));
        }
        public override Deferred Run(CATContext context)
        {
            if (IsRunning)
            {
                return(base.Run(context));
            }
            var result = base.Run(context);

            // Connect camera and event listener, or quit
            var gobj = cinemachineFreeLookCam.First(context);

            if (gobj == null)
            {
                Stop();
                return(result);
            }
            cam = gobj.GetComponentInChildren <CinemachineFreeLook>();
            if (cam == null)
            {
                Stop();
                return(result);
            }
            gobj = catEventManager.First(context);
            if (gobj == null)
            {
                Stop();
                return(result);
            }
            evtMan = gobj.GetComponentInChildren <CATEventManager>();
            if (evtMan == null)
            {
                Stop();
                return(result);
            }

            // Sanitize distance minimum and maximum
            speed = inputSpeed.GetValue(context);
            min   = minimumDistance.GetValue(context);
            if (min < 0f)
            {
                min = 0.0001f;
            }
            max = maximumDistance.GetValue(context);
            if (max < min)
            {
                max = min;
            }

            // Subscribe to event
            subscription = evtMan.Subscribe(inputEvent.ToString(), OnInput);

            return(result);
        }
Ejemplo n.º 6
0
        public Deferred CreateAccount(string username, string password, string email)
        {
            var account = new Account();

            account.username = username;
            account.password = password;
            account.email    = email;
            return(account.Save().AddCallback(delegate(object res, object[] args)
            {
                CATEventManager.FireGlobalEvent(gameObject, "AccountsChanged", null);
                return res;
            }));
        }
Ejemplo n.º 7
0
        public Deferred DeleteCharacter(Account account, Character character)
        {
            var cond = Conductor.GetConductor();

            if (cond == null)
            {
                return(Deferred.Succeed(false));
            }
            var ssvc = cond.GetLocalServiceByInterface <IStorageService>();

            if (ssvc == null)
            {
                return(Deferred.Succeed(false));
            }
            return(ssvc.Delete(character, account, character).AddCallback(delegate(object res, object[] args)
            {
                CATEventManager.FireGlobalEvent(gameObject, "CharactersChanged", null);
                return true;
            }));
        }