Код:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid==D_ECP)
{
if(!response) return 1;
if(listitem==0)
{
if(event_start==true) return SendClientMessage(playerid, red, "Let the current event finish before starting another one");
if(wait_event==1) return SendClientMessage(playerid, red, "You must wait 10 seconds before starting another event!");
ShowPlayerDialog(playerid, 552,DIALOG_STYLE_LIST,"Select an event","Team Death-Match\nDeath Match\nDerby\nCapture The Point(CTP)\nFallout ","Select","Close");
}
else if(listitem==1)
{
if(p_state[playerid]==C_MAP) return SendClientMessage(playerid, red, "Please finish the current map by typing /savemap");
ShowPlayerDialog(playerid, D_CREATE,DIALOG_STYLE_LIST,"Select an event","Team Death-Match\nDeath Match\nDerby","Select","Close");
}
else if(listitem==2)
{
ShowPlayerDialog(playerid, DELETE_MAP,DIALOG_STYLE_LIST,"Select an event","Team Death-Match\nDeath Match\nDerby","Select","Close");
}
}
else if(dialogid==DELETE_MAP)
{
if(!response) return 1;
if(listitem==0)
{
new query[129],mapname[129],rows,fields,str[129]=" ",str2[129];
format(query,sizeof(query),"SELECT * FROM `event_maps` WHERE `event_type`='%d'",TDM);
d_event=TDM;
mysql_query(mysql,query);/// ERROR LINE
cache_get_data(rows,fields);
nummaps=rows;
if(rows)
{
for(new i=0;i<rows;++i)
{
cache_get_row(i,2,mapname);
format(str2,sizeof(str2),"%s\n",mapname);
strcat(str,str2,sizeof(str2));
}
}
else
{
format(str,sizeof(str),"There are no maps available for this event");
}
ShowPlayerDialog(playerid, 600,DIALOG_STYLE_LIST,"Select a map",str,"Select","Close");
}
else if(listitem==1)
{
new query[129],mapname[129],rows,fields,str[129]=" ",str2[129];
format(query,sizeof(query),"SELECT * FROM `event_maps` WHERE `event_type`='%d'",DM);
d_event=DM;
mysql_query(mysql,query);
cache_get_data(rows,fields);
nummaps=rows;
if(rows)
{
for(new i=0;i<rows;++i)
{
cache_get_row(i,2,mapname);
format(str2,sizeof(str2),"%s\n",mapname);
strcat(str,str2,sizeof(str2));
}
}
else
{
format(str,sizeof(str),"There are no maps available for this event");
}
ShowPlayerDialog(playerid, 600,DIALOG_STYLE_LIST,"Select a map",str,"Select","Close");
}
else if(listitem==2)
{
new query[129],mapname[129],rows,fields,str[129]=" ",str2[129];
format(query,sizeof(query),"SELECT * FROM `event_maps` WHERE `event_type`='%d'",DERBY);
d_event=DERBY;
mysql_query(mysql,query);
cache_get_data(rows,fields);
nummaps=rows;
if(rows)
{
for(new i=0;i<rows;++i)
{
cache_get_row(i,2,mapname);
format(str2,sizeof(str2),"%s\n",mapname);
strcat(str,str2,sizeof(str2));
}
}
else
{
format(str,sizeof(str),"There are no maps available for this event");
}
ShowPlayerDialog(playerid, 600,DIALOG_STYLE_LIST,"Select a map",str,"Select","Close");
}
}
else if(dialogid==600)
{
if(!response) return 1;
if(d_event==TDM)
{
if(nummaps)
{
new query[129],map_name0[129],rows,fields;
format(query,sizeof(query),"SELECT * FROM `event_maps` WHERE `event_type`='%d'",TDM);
mysql_query(mysql, query);
cache_get_data(rows,fields);
for(new i=0;i<rows;i++)
{
if(listitem==i)
{
map_id=cache_get_row_int(i,0);
cache_get_row(i,2,map_name0);
format(query,sizeof(query),"DELETE FROM `event_maps` WHERE `map_id`='%d'",map_id);
mysql_query(mysql,query);
format(query,sizeof(query),"You have deleted '%s' map for Team DeathMatch Event",map_name0);
SendClientMessage(playerid, green,query);
}
}
}
}
else if(d_event==DM)
{
if(nummaps)
{
new query[129],map_name1[129],rows,fields;
format(query,sizeof(query),"SELECT * FROM `event_maps` WHERE `event_type`='%d'",DM);
mysql_query(mysql, query);
cache_get_data(rows,fields);
for(new i=0;i<rows;i++)
{
if(listitem==i)
{
map_id=cache_get_row_int(i,0);
cache_get_row(i,2,map_name1);
format(query,sizeof(query),"DELETE FROM `event_maps` WHERE `map_id`='%d'",map_id);
mysql_query(mysql,query);
format(query,sizeof(query),"You have deleted '%s' map for DeathMatch Event",map_name1);
SendClientMessage(playerid, green,query);
}
}
}
}
else if(d_event==DERBY)
{
if(nummaps)
{
new query[129],map_name2[129],rows,fields;
format(query,sizeof(query),"SELECT * FROM `event_maps` WHERE `event_type`='%d'",DERBY);
mysql_query(mysql, query);
cache_get_data(rows,fields);
for(new i=0;i<rows;i++)
{
if(listitem==i)
{
map_id=cache_get_row_int(i,0);
cache_get_row(i,2,map_name2);
format(query,sizeof(query),"DELETE FROM `event_maps` WHERE `map_id`='%d'",map_id);
mysql_query(mysql,query);
format(query,sizeof(query),"You have deleted '%s' map for Derby Event",map_name2);
SendClientMessage(playerid, green,query);
}
}
}
}
}
else if(dialogid==D_CREATE)
{
if(!response) return 1;
if(listitem==0)
{
p_state[playerid]=C_MAP;
pevent_type[playerid]=TDM;
SendClientMessage(playerid,green,"You are now creating a map for team deathmatch event. Type /savemap When you are done.");
SendClientMessage(playerid, green,"Suggested Commands-");
SendClientMessage(playerid, green,"1) /createredspawn - To create spawn point for red team");
SendClientMessage(playerid, green,"2) /createbluespawn - To create spawn point for blue team");
}
else if(listitem==1)
{
p_state[playerid]=C_MAP;
pevent_type[playerid]=DM;
SendClientMessage(playerid,green,"You are now creating a map for Deathmatch event. Type /savemap When you are done.");
SendClientMessage(playerid, green,"Suggested Commands-");
SendClientMessage(playerid, green,"/createspawn - To create spawn point for players");
}
else if(listitem==2)
{
p_state[playerid]=C_MAP;
pevent_type[playerid]=DERBY;
SendClientMessage(playerid,green,"You are now creating a map for Derby event. Type /savemap When you are done.");
SendClientMessage(playerid, green,"Suggested Commands-");
SendClientMessage(playerid, green,"/createspawn - To create spawn point for players with their cars");
}
}
else if(dialogid==552)
{
if(!response) return 1;
if(listitem==0)
{
new query[129],mapname[129],rows,fields,str[129]=" ",str2[129];
format(query,sizeof(query),"SELECT * FROM `event_maps` WHERE `event_type`='%d'",TDM);
event_type=TDM;
mysql_query(mysql,query);
cache_get_data(rows,fields);
nummaps=rows;
if(rows)
{
for(new i=0;i<rows;++i)
{
cache_get_row(i,2,mapname);
format(str2,sizeof(str2),"%s\n",mapname);
strcat(str,str2,sizeof(str2));
}
}
else
{
format(str,sizeof(str),"There are no maps available for this event");
}
ShowPlayerDialog(playerid, D_MAPS,DIALOG_STYLE_LIST,"Select a map",str,"Select","Close");
}
else if(listitem==1)
{
new query[129],mapname[129],rows,fields,str[129]=" ",str2[129];
format(query,sizeof(query),"SELECT * FROM `event_maps` WHERE `event_type`='%d'",DM);
event_type=DM;
mysql_query(mysql,query);
cache_get_data(rows,fields);
nummaps=rows;
if(rows)
{
for(new i=0;i<rows;++i)
{
cache_get_row(i,2,mapname);
format(str2,sizeof(str2),"%s\n",mapname);
strcat(str,str2,sizeof(str2));
}
}
else
{
format(str,sizeof(str),"There are no maps available for this event");
}
ShowPlayerDialog(playerid, D_MAPS,DIALOG_STYLE_LIST,"Select a map",str,"Select","Close");
}
else if(listitem==2)
{
new query[129],mapname[129],rows,fields,str[129]=" ",str2[129];
format(query,sizeof(query),"SELECT * FROM `event_maps` WHERE `event_type`='%d'",DERBY);
event_type=DERBY;
mysql_query(mysql,query);
cache_get_data(rows,fields);
nummaps=rows;
if(rows)
{
for(new i=0;i<rows;++i)
{
cache_get_row(i,2,mapname);
format(str2,sizeof(str2),"%s\n",mapname);
strcat(str,str2,sizeof(str2));
}
}
else
{
format(str,sizeof(str),"There are no maps available for this event");
}
ShowPlayerDialog(playerid, D_MAPS,DIALOG_STYLE_LIST,"Select a map",str,"Select","Close");
}
else if(listitem==3)
{
if(event_start==true) return SendClientMessage(playerid, red, "Let the current event finish before starting another one");
new str[129];
format(str,sizeof(str),"Event: 'Capture The Point' Event is going to start. Type /event to participate");
SendClientMessageToAll(lred,str);
format(str,sizeof(str),"Reward: $10,000 and 10 Score | Creator SystemX");
SendClientMessageToAll(lred,str);
ctparea=CreateDynamicCube(2185.5007,3025.8511,700,2365.0859,3245.6042,450.1484);
event_type=CTP;
event_start=true;
event_ready=false;
totalp_event=0;
SetTimer("start_event",15000,0);
se_timer=1;
}
else if(listitem==4)
{
if(event_start==true) return SendClientMessage(playerid, red, "Let the current event finish before starting another one");
new str[129];
format(str,sizeof(str),"Event: 'Fallout' Event is going to start. Type /event to participate");
SendClientMessageToAll(lred,str);
format(str,sizeof(str),"Reward: $10,000 and 10 Score | Creator SystemX");
SendClientMessageToAll(lred,str);
farea=CreateDynamicCube(-765.9512,-245.5892, 625.7837,-650.9512 , -150.5892, 606.7837);
event_type=FALLOUT;
event_start=true;
event_ready=false;
totalp_event=0;
SetTimer("start_event",15000,0);
se_timer=1;
}
}
else if(dialogid==D_MAPS)
{
if(!response) return 1;
if(event_start==true) return SendClientMessage(playerid, red, "Let the current event finish before starting another one");
if(event_type==TDM)
{
if(nummaps)
{
new query[129],rows,fields;
format(query,sizeof(query),"SELECT * FROM `event_maps` WHERE `event_type`='%d'",TDM);
cache_get_data(rows,fields);
for(new i=0;i<rows;i++)
{
if(listitem==i)
{
map_id=cache_get_row_int(i,0);
cache_get_row(i,2,map_name);
red_spawn[0]=cache_get_row_int(i,3);
red_spawn[1]=cache_get_row_int(i,4);
red_spawn[2]=cache_get_row_int(i,5);
blue_spawn[0]=cache_get_row_int(i,6);
blue_spawn[1]=cache_get_row_int(i,7);
blue_spawn[2]=cache_get_row_int(i,8);
event_int=cache_get_row_int(i,9);
event_vw=cache_get_row_int(i,10);
new str[129];
format(str,sizeof(str),"Event: A 'Team Death Match' Event is going to start. Type /event to participate");
SendClientMessageToAll(lred,str);
format(str,sizeof(str),"Map Name: %s | Reward: $10,000 and 10 Score | Creator SystemX",map_name);
SendClientMessageToAll(lred,str);
event_start=true;
event_ready=false;
totalp_red=0;
totalp_blue=0;
totalp_event=0;
SetTimer("start_event",15000,0);
se_timer=1;
}
}
}
}
else if(event_type==DM)
{
if(nummaps)
{
new query[129],rows,fields;
format(query,sizeof(query),"SELECT * FROM `event_maps` WHERE `event_type`='%d'",DM);
cache_get_data(rows,fields);
for(new i=0;i<rows;i++)
{
if(listitem==i)
{
map_id=cache_get_row_int(i,0);
cache_get_row(i,2,map_name);
red_spawn[0]=cache_get_row_int(i,3);
red_spawn[1]=cache_get_row_int(i,4);
red_spawn[2]=cache_get_row_int(i,5);
event_int=cache_get_row_int(i,9);
event_vw=cache_get_row_int(i,10);
new str[129];
format(str,sizeof(str),"Event: A 'Death Match' Event is going to start. Type /event to participate");
SendClientMessageToAll(lred,str);
format(str,sizeof(str),"Map Name: %s | Reward: $10,000 and 10 Score | Creator SystemX",map_name);
SendClientMessageToAll(lred,str);
event_start=true;
event_ready=false;
totalp_event=0;
SetTimer("start_event",15000,0);
se_timer=1;
}
}
}
}
else if(event_type==DERBY)
{
if(nummaps)
{
new query[129],rows,fields;
format(query,sizeof(query),"SELECT * FROM `event_maps` WHERE `event_type`='%d'",DERBY);
cache_get_data(rows,fields);
for(new i=0;i<rows;i++)
{
if(listitem==i)
{
map_id=cache_get_row_int(i,0);
cache_get_row(i,2,map_name);
red_spawn[0]=cache_get_row_int(i,3);
red_spawn[1]=cache_get_row_int(i,4);
red_spawn[2]=cache_get_row_int(i,5);
event_int=cache_get_row_int(i,9);
event_vw=cache_get_row_int(i,10);
event_car=cache_get_row_int(i,11);
new str[129];
format(str,sizeof(str),"Event: A 'Derby' Event is going to start. Type /event to participate");
SendClientMessageToAll(lred,str);
format(str,sizeof(str),"Map Name: %s | Reward: $10,000 and 10 Score | Creator SystemX",map_name);
SendClientMessageToAll(lred,str);
event_start=true;
event_ready=false;
totalp_event=0;
SetTimer("start_event",15000,0);
se_timer=1;
}
}
}
}
}
else if(dialogid==555)
{
new query[500];
new veh=strval(inputtext);
new int=GetPlayerInterior(playerid);
new vw=GetPlayerVirtualWorld(playerid);
format(query,sizeof(query),"INSERT INTO `event_maps`(event_type,map_name,r_spawnx,r_spawny,r_spawnz,veh_id,map_int,vw) VALUES('%d','%s','%f','%f','%f','%d','%d','%d')",pevent_type[playerid],cmap_name,set_rs[playerid][0],set_rs[playerid][1],set_rs[playerid][2],veh,int,vw);
mysql_query(mysql,query);
SendClientMessage(playerid, blue, "You have entered Vehicle model ID for the derby event");
}
return 1;
}