Está en la página 1de 6

FPS Maquina de estado

Estados: Atirar, Abaixar, Pular, Fugir, Correr, Andar, Recarregar, Parado.


Grafo:

switch(currentState){
case Andar:
if(inimigo==false)
currentState=Andar;

case Recarregar:
if(inimigo==false)
currentState=Andar;
else if(inimigo== true&&Balas==0)

else if(inimigo== true)


currentState= Correr;
break;
case Correr:
if(inimigo==false)
currentState=Andar;
else if (obstacle==true&&inimigos==false)
currentState=Pular;
else if (tunel== true&&inimigos==false)
currentState=Abaixar;
else if (inimigo == true&&HP == HPinimigo&&Balas!=0)
currentState=Atirar;
break;

currentState= Fugir;
break;
case Fugir:
if(inimigo==false)
currentState=Andar;
else if(inimigo== true&& HP>HPInimigo&&Balas!=0)
currentState= Atirar;
break;

case Pular:
if(obstacle ==false);
currentState=Andar;
break;
case Abaixar:
if(tunel ==false);
currentState=Andar;
break;
case Atirar:
if(inimigo ==false);
currentState=Andar;
else if (inimigo ==true&&HP<HPInimigo)
currentState=Fugir;
else if (inimigo ==true&& Balas == 0)
currentState=Recarregar;
break;
Jogador Maquina de Estado
Estados: Movimentar, Marcar, Desarmar, Tocar, Chutar, Cabecear, Lanar, Driblar, Correr, dominar
Grafo:

switch(currentState){
case Movimentar:
if(rivalposse==true)
currentState=Desarmar;
else if(equipeposse== true)

case Recarregar:
if(inimigo==false)
currentState=Andar;
else if(inimigo== true&&Balas==0)
currentState= Fugir;

currentState= Marcar;
break;
case Desarmar:
if(bolaaeria==true)
currentState=cabecear;
else if (obstacle==true&&inimigos==false)
currentState=Pular;
else if (tunel== true&&inimigos==false)
currentState=Abaixar;
else if (inimigo == true&&HP == HPinimigo&&Balas!=0)
currentState=Atirar;
break;

break;
case Fugir:
if(inimigo==false)
currentState=Andar;
else if(inimigo== true&& HP>HPInimigo&&Balas!=0)
currentState= Atirar;
break;

case Marcar:
if(obstacle ==false);
currentState=Andar;
break;
case Marca:
if(tunel ==false);
currentState=Andar;
break;
case Atirar:
if(inimigo ==false);
currentState=Andar;
else if (inimigo ==true&&HP<HPInimigo)
currentState=Fugir;
else if (inimigo ==true&& Balas == 0)
currentState=Recarregar;
break;
Estratgia em tempo real Maquina de estado
Estados: Parado, Movimentar, atacar, fugir, trabalhar, Restaurar, patrulhar.
Grafo:

switch(currentState){
case Movimentar:
if(rivalposse==true)
currentState=Desarmar;
else if(equipeposse== true)

case Recarregar:
if(inimigo==false)
currentState=Andar;
else if(inimigo== true&&Balas==0)
currentState= Fugir;

currentState= Marcar;
break;
case Desarmar:
if(bolaaeria==true)
currentState=cabecear;
else if (obstacle==true&&inimigos==false)
currentState=Pular;
else if (tunel== true&&inimigos==false)
currentState=Abaixar;
else if (inimigo == true&&HP == HPinimigo&&Balas!=0)
currentState=Atirar;
break;
case Marcar:
if(obstacle ==false);
currentState=Andar;
break;
case Marca:
if(tunel ==false);
currentState=Andar;
break;
case Atirar:
if(inimigo ==false);
currentState=Andar;
else if (inimigo ==true&&HP<HPInimigo)
currentState=Fugir;
else if (inimigo ==true&& Balas == 0)
currentState=Recarregar;
break;

break;
case Fugir:
if(inimigo==false)
currentState=Andar;
else if(inimigo== true&& HP>HPInimigo&&Balas!=0)
currentState= Atirar;
break;

También podría gustarte