16.01.2011, 22:03
Hola , quisiera saver como pongo un menu de armas como esto
/imageshack/img189/1913/samp018mg.png
porfabor ayudenme
/imageshack/img189/1913/samp018mg.png
porfabor ayudenme

ShowPlayerDialog(playerid,1,DIALOG_STYLE_LIST,"Armas","Arma 1\r\nArma 2\r\nArma 3","Comprar", "Cancelar");
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == 1)
{
if(!response) return SendClientMessage(playerid, 0xFFFFFFFF, "You canceled!");
if(listitem == 1)
{
GivePlayerWeapon(playerid, 31, 500);
return 1;
}
else if(listitem == 2)
{
//otro
return 1;
}
}
return 0;
}
OnPlayerCommandText(playerid,cmdtext[])if(!strcmp(cmdtext, "/tienda", true)) // Con esto pueden acceder a la "tienda" de armas. { ShowPlayerDialog(playerid, 1, DIALOG_STYLE_LIST, "Armas","Deagle $1000\nCombat Shotgun $3000\nM4 $5000", "Comprar", "Cancelar"); // Con esto tu eliges nadamas los nombres, y "\n" significa que pasas a la otra linea del dialogo, es decir, la otra opcion. return 1; } public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) // esto es para se;alar la respuesta y agarrar las variables, las cuales seran utiles mas adelante. { if(response) // esta parte es importante si piensas hacer un dialogo en otro momento { switch(dialogid) // con esta cambia el id del dialogo, el primer dialogo que vamos a crear es por defecto el numero 1 { case 1: // esto significa el primer caso, que seria el dialogo 1 { switch(listitem) // con esto da la posibilidad de cambiar de linea, si no la agregas, no funcionara { case 0:// este el primer caso, es decir la primera opcion que agregue mas arriba, la cual seria "Deagle $1000" { if(GetPlayerMoney(playerid) < 1000) return SendClientMessage(playerid, 0xFFFFFF, "No tienes suficiente dinero."); // esta te sirve para que solo puedan comprarla si tienen mas de 1000 dolares. sino devolvera ese mensaje GivePlayerMoney(playerid, -1000); // esto es para restarle 1000 dolares por comprar el arma GivePlayerWeapon(playerid,24,1000); // aca seleccionas el arma de la opcion } case 1:// este es el segundo, NOTA; Siempre se empieza desde el case 0 y se sigue contando { if(GetPlayerMoney(playerid) < 3000) return SendClientMessage(playerid, 0xFFFFFF, "No tienes suficiente dinero."); // nota que cambie la cantidad de dinero GivePlayerMoney(playerid, -3000); // nota que cambie la cantidad de dinero GivePlayerWeapon(playerid,27,1000); // nota que cambie el id del arma a la de la combat shotgun } case 2:// este es el tercero { if(GetPlayerMoney(playerid) < 5000) return SendClientMessage(playerid, 0xFFFFFF, "No tienes suficiente dinero."); GivePlayerMoney(playerid, -5000); GivePlayerWeapon(playerid,31,1000); // id de la m4 } } } // y listo!