//================================================================================================== CMD:buy(playerid, params[]) { if(!IsPlayerInRangeOfPoint(playerid, 15.0, 6.091179,-29.271898,1003.549438)) return SendClientMessage(playerid, COLOR_GREY, "You are not inside of a 24/7"); ShowPlayerDialog(playerid, DIALOG_BUY, DIALOG_STYLE_LIST, "Store:", "Chips ($15)\nBurger($10)", "Purchase", "Cancel"); return 1; } //==================================================================================================
if(dialogid == DIALOG_BUY) { if(response) { if(listitem == 0) { if(GetPlayerMoney(playerid) < 15) return SendClientMessage(playerid, 0xAFAFAFAA, "You don't have enough cash."); GivePlayerMoney(playerid, -15); SetPlayerHealth(playerid, -50); SendClientMessage(playerid, COLOR_GREENYELLOW, "You have bought a chips"); } if(listitem == 1) { if(GetPlayerMoney(playerid) < 10) return SendClientMessage(playerid, 0xAFAFAFAA, "You don't have enough cash."); GivePlayerMoney(playerid, -10); SendClientMessage(playerid, COLOR_GREENYELLOW, "You have bought a burger"); } } return 1; }
#define DIALOG_BUY 6
if(response)
if(!response)
case DIALOG_BUY:
{
if(response)
{
case 0: // the first list-item
//continue like this
Don't do it with "if" then! Do it with cases:
pawn Код:
|
case DIALOG_BUY:
{
if(!response) return 1;
switch(listitem)
{
case 0: { // The first listitem
if(GetPlayerMoney(playerid) < 15) return SendClientMessage(playerid, 0xAFAFAFAA, "You don't have enough cash.");
GivePlayerMoney(playerid, -15);
SetPlayerHealth(playerid, -50);
SendClientMessage(playerid, COLOR_GREENYELLOW, "You have bought a chips");
}
case 1: { //the second one
if(GetPlayerMoney(playerid) < 10) return SendClientMessage(playerid, 0xAFAFAFAA, "You don't have enough cash.");
GivePlayerMoney(playerid, -10);
SendClientMessage(playerid, COLOR_GREENYELLOW, "You have bought a burger");
}
}
return 1;
}
C:\Users\User\Desktop\Snoopy\gamemodes\Snoopy.pwn(1130) : error 014: invalid statement; not in switch C:\Users\User\Desktop\Snoopy\gamemodes\Snoopy.pwn(1130) : warning 215: expression has no effect
#define DIALOG_BUY 6
if(dialogid == DIALOG_BUY)
{
if(response)
{
switch(listitem)
{
case 0: // chips
{
if(GetPlayerMoney(playerid) < 15) return SendClientMessage(playerid, 0xAFAFAFAA, "You don't have enough cash.");
GivePlayerMoney(playerid, -15);
SetPlayerHealth(playerid, -50); // NOTE: This will kill the player. Might want to add 50?
SendClientMessage(playerid, COLOR_GREENYELLOW, "You have bought a chips");
}
case 1: // burger
{
if(GetPlayerMoney(playerid) < 10) return SendClientMessage(playerid, 0xAFAFAFAA, "You don't have enough cash.");
GivePlayerMoney(playerid, -10);
SendClientMessage(playerid, COLOR_GREENYELLOW, "You have bought a burger");
}
}
}
return 1;
}
C:\Users\User\Desktop\Snoopy\gamemodes\Snoopy.pwn(1130) : error 014: invalid statement; not in switch C:\Users\User\Desktop\Snoopy\gamemodes\Snoopy.pwn(1130) : warning 215: expression has no effect C:\Users\User\Desktop\Snoopy\gamemodes\Snoopy.pwn(1130) : error 001: expected token: ";", but found ":" C:\Users\User\Desktop\Snoopy\gamemodes\Snoopy.pwn(1130) : error 029: invalid expression, assumed zero C:\Users\User\Desktop\Snoopy\gamemodes\Snoopy.pwn(1130) : fatal error 107: too many error messages on one line
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { if(dialogid == DIALOG_MUSICPLAYER) { if(response) { if(listitem == 0) { PlayAudioStreamForPlayer(playerid, "http://k004.kiwi6.com/hotlink/i6p9a47k3h/etho_the_godfather_theme_dubstep_remix.mp3"); // Play the song } if(listitem == 1) { PlayAudioStreamForPlayer(playerid, "http://k004.kiwi6.com/hotlink/3525w3wdnb/dj_tapolsky_bass_resolution.mp3"); } if(listitem == 2) { PlayAudioStreamForPlayer(playerid, "http://k004.kiwi6.com/hotlink/ar02f3fgii/ice_cube_gangsta_rap_made_me_do_it.mp3"); } if(listitem == 3) { PlayAudioStreamForPlayer(playerid, "http://k004.kiwi6.com/hotlink/mniont2jn1/wiz_khalifa_on_my_level.mp3"); } if(listitem == 4) { PlayAudioStreamForPlayer(playerid, "http://k004.kiwi6.com/hotlink/5dj2xxfxz8/flux_pavilion_wobbleland_2011.mp3"); } if(listitem == 5) { PlayAudioStreamForPlayer(playerid, "None"); } } return 1; } if(dialogid == DIALOG_AGE) { if(!response) { Kick(playerid); } else { if(strlen(inputtext)) { new age = strval(inputtext); if(age > 100 || age < 16) { ShowPlayerDialog(playerid, DIALOG_AGE, DIALOG_STYLE_INPUT, "- Age -","How old are you??\n{FF0000}(( 16 - 100 ))","Answer","Quit"); } else { PlayerInfo[playerid][pAge] = age; new string[ 64 ] ; format(string, sizeof(string), "INFO: You're {3BB9FF}%d years old.",age); SendClientMessage(playerid, -1, string); GivePlayerCash(playerid, 600); SaveAccountStats(playerid); SpawnPlayer(playerid); } } else { return 0; } } } if(dialogid == DIALOG_SEX) { if(response) { PlayerInfo[playerid][pSex] = 1; SendClientMessage(playerid, -1, "INFO: You are {FF0000}male."); SetPlayerSkin(playerid, 60); PlayerInfo[playerid][pSkin] = 60; ShowPlayerDialog(playerid, DIALOG_AGE, DIALOG_STYLE_INPUT, "- Age -","How old are you??\n{FF0000}(( 16 - 100 ))","Answer","Quit"); } else { PlayerInfo[playerid][pSex] = 2; SendClientMessage(playerid, -1, "INFO: You are {FF0000}female."); SetPlayerSkin(playerid, 233); PlayerInfo[playerid][pSkin] = 233; ShowPlayerDialog(playerid, DIALOG_AGE, DIALOG_STYLE_INPUT, "- Age -","How old are you??\n{FF0000}(( 16 - 100 ))","Answer","Quit"); } } switch( dialogid ) { case DIALOG_REGISTER: { if (!response) return Kick(playerid); if(response) { if(!strlen(inputtext)) return ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_PASSWORD, "Registering...","You have entered an invalid password.\nType your password below to register a new account.","Register","Quit"); new INI:File = INI_Open(UserPath(playerid)); INI_SetTag(File,"data"); INI_WriteInt(File,"Password",udb_hash(inputtext)); INI_WriteInt(File,"Cash",0); INI_WriteInt(File,"Admin",0); INI_WriteInt(File,"Sex",0); INI_WriteInt(File,"Age",0); INI_WriteInt(File,"Level",0); INI_WriteInt(File,"Skin",0); INI_WriteInt(File,"Team",0); INI_WriteInt(File,"Accent",0); INI_WriteInt(File,"banned",0); INI_Close(File); ShowPlayerDialog(playerid, DIALOG_SEX, DIALOG_STYLE_MSGBOX, "- Sex -","What gender are you?","Male","Female"); } } case DIALOG_LOGIN: { if ( !response ) return Kick ( playerid ); if( response ) { if(udb_hash(inputtext) == PlayerInfo[playerid][pPass]) { INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid); new tmp2[ 256 ], playername2[ MAX_PLAYER_NAME ]; GetPlayerName(playerid, playername2, sizeof(playername2)); format(tmp2, sizeof(tmp2), "~w~Welcome ~n~~r~%s", playername2); GameTextForPlayer(playerid, tmp2, 5000, 1); SetTimerEx("UnsetFirstSpawn", 5000, false, "i", playerid); GivePlayerCash(playerid, PlayerInfo[playerid][pCash]); if(PlayerInfo[playerid][pBanned]==1) { new stringa[600]; format(stringa,sizeof(stringa),"{FF0000}[Admin] {FF6347}Server has kicked %s reason: Account Banned",RPName(playerid)); SendClientMessageToAll(COLOR_RED,stringa); Kick(playerid); } SpawnPlayer(playerid); } else { ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD,"Login","You have entered an incorrect password.\nType your password below to login.","Login","Quit"); } return 1; } case DIALOG_BUY: { if(!response) return 1; switch(listitem) { case 0: { // The first listitem if(GetPlayerMoney(playerid) < 15) return SendClientMessage(playerid, 0xAFAFAFAA, "You don't have enough cash."); GivePlayerMoney(playerid, -15); SetPlayerHealth(playerid, -50); SendClientMessage(playerid, COLOR_GREENYELLOW, "You have bought a chips"); } case 1: { //the second one if(GetPlayerMoney(playerid) < 10) return SendClientMessage(playerid, 0xAFAFAFAA, "You don't have enough cash."); GivePlayerMoney(playerid, -10); SendClientMessage(playerid, COLOR_GREENYELLOW, "You have bought a burger"); } } return 1; } } } return 1; }