コード例 #1
0
        public bool Pode()
        {
            bool   retorno = false;
            KeyVar keyVar  = GameController.g.MyKeys;

            if (aposShift)
            {
                retorno = keyVar.VerificaAutoShift(shiftDeApos);
            }

            if (aposAutoShift)
            {
                retorno = keyVar.VerificaAutoShift(autoDeApos);
            }

            if (!aposShift && !aposAutoShift && (antesDeShift || antesDeAutoShift))
            {
                retorno = true;
            }

            if (antesDeShift)
            {
                retorno &= !keyVar.VerificaAutoShift(shiftDeAntes);
            }

            if (antesDeAutoShift)
            {
                retorno &= !keyVar.VerificaAutoShift(autoDeAntes);
            }


            return(retorno);
        }
コード例 #2
0
 private void OnTriggerEnter(Collider other)
 {
     if (keys.VerificaAutoShift(chave))
     {
         Destroy(gameObject);
     }
     else
     {
         if (estado == EstadoDaVisao.emEspera)
         {
             if (other.tag == "Player")
             {
                 g.ContarPassos = false;
                 dirDeMove      = (npc.position - other.transform.position).normalized;
                 GameController.EntrarNoFluxoDeTexto();
                 g.Manager.Estado = EstadoDePersonagem.movimentoDeFora;
                 Collider esseCol = GetComponent <Collider>();
                 AplicadorDeCamera.cam.InicializaCameraExibicionista(movs[0].AlvoDoMovimento, movs[0].alturaDaCamera, true);
                 posInicialDeMoveCamera = AplicadorDeCamera.cam.transform.position;
                 esseCol.enabled        = false;
                 esseCol.isTrigger      = false;
                 estado = EstadoDaVisao.iniciou;
                 keys.MudaShift(chave, true);
             }
             else if (other.tag == "Criature" && !GameController.g.estaEmLuta)
             {
                 EvitaAvancarNoTrigger.Evita();
             }
         }
     }
 }