| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125 |
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) {
- switch( dialogid ) {
- case DIALOGID_MAP_SAVE_AS: {
- if( !response ) {
- return 1;
- }
- new
- objects_saved,
- vehicles_saved,
- pickups_saved,
- actors_saved,
- attachments_saved,
- buildings_saved,
- save_success
- ;
- save_success = SaveMap(
- .mapname = inputtext,
- .objects_saved = objects_saved,
- .vehicles_saved = vehicles_saved,
- .pickups_saved = pickups_saved,
- .actors_saved = actors_saved,
- .attachments_saved = attachments_saved,
- .buildings_saved = buildings_saved,
- .playerid = playerid
- );
- if( !save_success ) {
- SendClientMessage(playerid, RGBA_RED, "ERROR: This map could not be saved!");
- ShowMapSaveDialog(playerid, dialogid);
- return 1;
- }
- if( GetMapID(inputtext) == INVALID_MAP_ID ) {
- CreateMapID(.mapname = inputtext);
- }
- format(g_ClientMessage, sizeof g_ClientMessage, "[%i] %s has saved this map as: %s", playerid, ret_GetPlayerName(playerid), inputtext);
- SendClientMessageToAll(RGBA_WHITE, g_ClientMessage);
-
- format(g_ClientMessage, sizeof g_ClientMessage, "Saved: %i Object(s), %i Vehicle(s), %i Pickup(s), %i Actor(s), %i Building(s).", objects_saved, vehicles_saved, pickups_saved, buildings_saved);
- SendClientMessageToAll(RGBA_WHITE, g_ClientMessage);
-
- if( attachments_saved > 0 ) {
- format(g_ClientMessage, sizeof g_ClientMessage, "+ %i of your attachment(s).", attachments_saved);
- SendClientMessage(playerid, RGBA_WHITE, g_ClientMessage);
- }
- return 1;
- }
- case DIALOGID_MAP_SAVE_CONFIRM: {
- if( !response ) {
- return 1;
- }
-
- if( g_MapLoadedID == INVALID_MAP_ID ) {
- SendClientMessage(playerid, RGBA_RED, "ERROR: A map has not been loaded!");
- ShowMapSaveDialog(playerid, dialogid);
- return 1;
- }
- if( isempty(inputtext) || strcmp(inputtext, SAVEMAP_COMMAND, true) != 0 ) {
- SendClientMessage(playerid, RGBA_RED, "ERROR: You did not enter the correct command into the textfield!");
- ShowMapSaveDialog(playerid, dialogid);
- return 1;
- }
- GetMapName(g_MapLoadedID, g_MapString, sizeof g_MapString);
- new
- objects_saved,
- vehicles_saved,
- pickups_saved,
- actors_saved,
- attachments_saved,
- buildings_saved,
- save_success
- ;
- save_success = SaveMap(
- .mapname = g_MapString,
- .objects_saved = objects_saved,
- .vehicles_saved = vehicles_saved,
- .pickups_saved = pickups_saved,
- .actors_saved = actors_saved,
- .attachments_saved = attachments_saved,
- .buildings_saved = buildings_saved,
- .playerid = playerid
- );
- if( !save_success ) {
- SendClientMessage(playerid, RGBA_RED, "ERROR: This map could not be saved!");
- ShowMapSaveDialog(playerid, dialogid);
- return 1;
- }
- format(g_ClientMessage, sizeof g_ClientMessage, "[%i] %s has saved the map.", playerid, ret_GetPlayerName(playerid));
- SendClientMessageToAll(RGBA_WHITE, g_ClientMessage);
- format(g_ClientMessage, sizeof g_ClientMessage, "Saved: %i Object(s), %i Vehicle(s), %i Pickup(s), %i Actor(s), %i Building(s).", objects_saved, vehicles_saved, pickups_saved, actors_saved, buildings_saved);
- SendClientMessageToAll(RGBA_WHITE, g_ClientMessage);
- if( attachments_saved > 0 ) {
- format(g_ClientMessage, sizeof g_ClientMessage, "+ %i of your attachment(s)", attachments_saved);
- SendClientMessage(playerid, RGBA_WHITE, g_ClientMessage);
- }
- return 1;
- }
- }
- #if defined msave_OnDialogResponse
- return msave_OnDialogResponse(playerid, dialogid, response, listitem, inputtext);
- #else
- return 0;
- #endif
- }
- #if defined _ALS_OnDialogResponse
- #undef OnDialogResponse
- #else
- #define _ALS_OnDialogResponse
- #endif
- #define OnDialogResponse msave_OnDialogResponse
- #if defined msave_OnDialogResponse
- forward msave_OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]);
- #endif
|