CMD:policia(playerid, params[])
{
if(!PLAYER_WORKS[playerid][WORK_POLICE]) return SendClientMessage(playerid, -1, "{999999}No eres policнa.");
if(PLAYER_TEMP[playerid][pt_WORKING_IN] != WORK_NONE && PLAYER_TEMP[playerid][pt_WORKING_IN] != WORK_POLICE)
{
SendClientMessageEx(playerid, -1, "{999999}Tienes que dejar de estar de servicio como %s primero.", work_info[ PLAYER_TEMP[playerid][pt_WORKING_IN] ][work_info_NAME]);
return 1;
}
if(GetPlayerVirtualWorld(playerid) != 0) return SendClientMessage(playerid, -1, "{999999}No estбs en el lugar adecuado.");
if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, -1, "{999999}No estбs depie.");
if(IsPlayerInRangeOfPoint(playerid, 1.0, 253.280288, 76.219017, 1003.640625) || IsPlayerInRangeOfPoint(playerid, 1.0, 266.547180, 119.652816, 1004.617187) || IsPlayerInRangeOfPoint(playerid, 1.0, 217.816406, 187.667922, 1003.031250))
{
if(!PLAYER_TEMP[playerid][pt_WORKING_IN]) ShowDialog(playerid, DIALOG_SELECT_POLICE_SKIN);
else EndPlayerJob(playerid);
return 1;
}
#define COLOR_POLICIA 0x3399FFFF
??
if(!PLAYER_TEMP[playerid][pt_WORKING_IN]) ShowDialog(playerid, DIALOG_SELECT_POLICE_SKIN);
else EndPlayerJob(playerid);
|
Pбsame esto:
PHP код:
Y el endplayerjob |
DIALOG_SELECT_POLICE_SKIN,
case DIALOG_SELECT_POLICE_SKIN:
{
for(new i = 0; i != MAX_LISTITEMS; i++ ) PLAYER_TEMP[playerid][pt_PLAYER_LISTITEM][i] = -1;
new dialog[60 * sizeof(POLICE_SKINS)], line_str[60], listitem;
format(dialog, sizeof dialog, "{CCCCCC}Ropa\t{CCCCCC}Rango necesario\n");
for(new i = 0; i != sizeof POLICE_SKINS; i ++)
{
if(POLICE_SKINS[i][police_skin_TYPE] != CHARACTER_INFO[playerid][ch_SEX]) continue;
if(POLICE_SKINS[i][police_skin_RANK] > PLAYER_SKILLS[playerid][WORK_POLICE]) format(line_str, sizeof line_str, "{666666}%d\t{666666}%s\n", POLICE_SKINS[i][police_skin_SKIN], POLICE_RANKS[ POLICE_SKINS[i][police_skin_RANK] ]);
else format(line_str, sizeof line_str, "{CCCCCC}%d\t{CCCCCC}%s\n", POLICE_SKINS[i][police_skin_SKIN], POLICE_RANKS[ POLICE_SKINS[i][police_skin_RANK] ]);
strcat(dialog, line_str);
PLAYER_TEMP[playerid][pt_PLAYER_LISTITEM][listitem] = i;
listitem ++;
}
ShowPlayerDialog(playerid, dialogid, DIALOG_STYLE_TABLIST_HEADERS, "Selecciona la ropa", dialog, ">>", "Salir");
return 1;
}
case DIALOG_SELECT_POLICE_SKIN:
{
if(response)
{
if(!PLAYER_WORKS[playerid][WORK_POLICE]) return 1;
if(PLAYER_TEMP[playerid][pt_PLAYER_LISTITEM][listitem] == -1) return 1;
if(POLICE_SKINS[ PLAYER_TEMP[playerid][pt_PLAYER_LISTITEM][listitem] ][police_skin_RANK] > PLAYER_SKILLS[playerid][WORK_POLICE]) return ShowDialog(playerid, dialogid);
SetPlayerSkin(playerid, POLICE_SKINS[ PLAYER_TEMP[playerid][pt_PLAYER_LISTITEM][listitem] ][police_skin_SKIN]);
StartPlayerJob(playerid, WORK_POLICE);
}
return 1;
}
public OnPlayerLeaveDynamicArea(playerid, areaid)
{
new info[2];
Streamer_GetArrayData(STREAMER_TYPE_AREA, areaid, E_STREAMER_EXTRA_ID, info);
switch(info[0])
{
case AREA_TYPE_NONE:
{
if(areaid == Lumberjack_Area)
{
if(PLAYER_TEMP[playerid][pt_WORKING_IN] == WORK_LUMBERJACK)
{
SendClientMessage(playerid, -1, "{999999}Has abandonado el trabajo de leсador porque te has alejado demasiado de la zona.");
EndPlayerJob(playerid);
}
}
|
El diбlogo que viene en ondialogresponse, pero no se si tengas un include para tus diбlogos busca esto en tu compilador:
DIALOG_SELECT_POLICE_SKIN y me pasas el cуdigo que trae el diбlogo. Igual buscas йsto y me pasas todo lo que contenga. EndPlayerJob(playerid); El diбlogo para que vea dуnde meter el color a los policнas. El otro es para quitбrselo segъn yo por eso necesito esas partes del cуdigo. |
C:\Users\Usuario\Desktop\samp037_svr_R2-1-1_win32\gamemodes\srp.pwn(5828) : error 021: symbol already defined: "ShowPlayerMarkers" Pawn compiler 3.10.2 Copyright © 1997-2006, ITB CompuPhase 1 Error.