[AYUDA] Limitar uso del boton a 7 -
pooooolo - 09.01.2010
Pues que
el jugador esta aciendo una anim de beber cerveza entonces cuando pulsa 7 veces
le desaparece la botella de la mano
si me pueden ayudar les estare muy agradecido
Re: [AYUDA] Limitar uso del boton a 7 -
TheChaoz - 09.01.2010
si estas preguntando lo que yo creo podes hacer eso asi mira:
pawn Код:
new Botella; //definis una variable global(dejabo de los includes o donde quieras. [Pero no dentro de una funcion!]
pawn Код:
// este es el comando para que salga la botella
if(strcmp(cmd, "/beber", true) == 0){
SetPlayerSpecialAction(playerid, SPECIAL_ACTION_DRINK_BEER);
SendClientMessage(playerid, COLOR_ORANGE, "Advertencia: Cuidado, no bebas mucho o terminaras ebrio!");
return 1;
}
pawn Код:
// para que deje la botella despues de usarla 5 veces(en este caso)
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if(newkeys == KEY_FIRE && GetPlayerSpecialAction(playerid) == SPECIAL_ACTION_DRINK_BEER){
if(Botella == 5){
SetPlayerSpecialAction(playerid, SPECIAL_ACTION_NONE);
}
else return Botella++;
}
return 1;
}
espero que te sirva
Etidato:
debes agregar
debajo de:
pawn Код:
SetPlayerSpecialAction(playerid, SPECIAL_ACTION_NONE);
ya que si nono podras volver a tomar
Re: [AYUDA] Limitar uso del boton a 7 -
pooooolo - 09.01.2010
Muchas gracias!
Re: [AYUDA] Limitar uso del boton a 7 -
Miguel - 10.01.2010
En realidad para que esto de resultado, necesitamos crear una variable disponible para todos los jugadores, por lo que ese codigo cambiarнa a:
pawn Код:
new Botella[MAX_PLAYERS];
pawn Код:
if(strcmp(cmd, "/beber", true) == 0)
{
SetPlayerSpecialAction(playerid, SPECIAL_ACTION_DRINK_BEER);
SendClientMessage(playerid, COLOR, "Advertencia: Cuidado, no bebas mucho o terminaras ebrio!");
return 1;
}
pawn Код:
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if(newkeys == KEY_FIRE && GetPlayerSpecialAction(playerid) == SPECIAL_ACTION_DRINK_BEER)
{
if(Botella[playerid] >= 7) // con esto checkeamos la cuenta del jugador (si es igual o mayor a 7)
{
SetPlayerSpecialAction(playerid, SPECIAL_ACTION_NONE);
SendClientMessage(playerid, COLOR, "Se te ha acabado tu botella!");
}
else return Botella[playerid] ++; // si no ha llegado a los 7, se agrega uno
}
return 1;
}
Si no fuera asi, entonces todos los jugadores sumaran puntos a la unica variable
Botella, 7 a la misma vez haciendolo causarнa que la botella se acabara de una vez...