[Problema] Con comando -
sonnkz - 08.04.2013
Bueno, estoy creando un comando para crear hqs ingame y me salto estos problemas
Код:
Buenarp.pwn(941) : warning 213: tag mismatch
Buenarp.pwn(941) : error 032: array index out of bounds (variable "PickupHQ")
Buenarp.pwn(941) : error 006: must be assigned to an array
Buenarp.pwn(1872) : warning 213: tag mismatch
Buenarp.pwn(1872) : error 032: array index out of bounds (variable "PickupHQ")
Codigos
Код:
941 : PickupHQ[playerid][Faccion] = Nombrehq;
Код:
1872 : INI_WriteString(Arch,"Faccion",PickupHQ[playerid][Faccion]);
Saludos y espero una soluciуn
Respuesta: [Problema] Con comando -
JustBored - 08.04.2013
Supongo que lo tenes en un enum, a la variable 'Faccion' agregale esto [51]
osea serнa
Faccion[51]
Serбn 51 caracteres que podrбs usar para el nombre de la facciуn.
Respuesta: [Problema] Con comando -
sonnkz - 08.04.2013
en los enum tengo Faccion[128]
Respuesta: [Problema] Con comando -
JustBored - 08.04.2013
їCуmo asignas el nombre a la facciуn? osea ahн veo una variable pero tipo їusas un format? їo le metes el nombre directamente? porque osea para asignar el nombre de la variable directamente usarнas
PickupHQ[playerid][Faccion] = "Nombrehq";
Ya que usandolo asн
PickupHQ[playerid][Faccion] = Nombrehq;
PAWN toma como que asignaste un valor, en ves de un mensaje.
Respuesta: [Problema] Con comando -
[J]ulian - 08.04.2013
Si "Faccion" es un string, tenes que usar format para llenarla. El "variable = varString" no se puede en Pawn.
pawn Код:
format(tustring, 128, "%s", Nombrehq);
Respuesta: [Problema] Con comando -
sonnkz - 08.04.2013
Entonces como quedaria el codigo ? nombrehq es donde se asigna el parametro , es una variable donde se asigna el texto que despues se inserta en un Text3Dlabel
te dejo todo el codigo que hice hasta ahora, si hay un error corregilo por que nose como solucionarlo ya
Comando /crearhq
Код:
CMD:crearhq(playerid, params[])
{
if(PlayerInfo[playerid][Admin] != 2013) return SendClientMessage(playerid, -1, "{00CED1}[ERROR]{FFFFFF} Tu no eres administrador!");
new Float:eX,Float:eY,Float:eZ;
new pInt, Nombrehq[128], pVw;
if(sscanf(params, "s[128]ifff",Nombrehq,pInt,pInt,eX,eY,eZ)) return SendClientMessage(playerid,-1,"{FF8C00}Uso:{FFFFFF}/crearhq [Nombre de HQ] [interior] [cordenada x interior] [cordenada y interior] [cordenada z interior]");
GetPlayerPos(playerid, PickupHQ[playerid][Entrada_x],PickupHQ[playerid][Entrada_y],PickupHQ[playerid][Entrada_z]);
PickupHQ[playerid][Salida_x] = eX;//almacenamos las cordenadas de los paremetros
PickupHQ[playerid][Salida_y] = eY;
PickupHQ[playerid][Salida_z] = eZ;
PickupHQ[playerid][Faccion] = nombrehq;
PickupHQ[playerid][Int] = pInt;
PickupHQ[playerid][VW] = pVw+100;
pHQ[playerid] = CreatePickup(1239, 1, PickupHQ[playerid][Entrada_x],PickupHQ[playerid][Entrada_y],PickupHQ[playerid][Entrada_z]);
new str[128];
format(str, sizeof(str), "{32BF32}%s\nUtiliza /entrar", Nombrehq);
LabelHq[playerid] = Create3DTextLabel(str,0xFFFFFFFF,PickupHQ[playerid][Entrada_x],PickupHQ[playerid][Entrada_y],PickupHQ[playerid][Entrada_z],20,0);
ActualizarHQ(playerid);
return 1;
}
stock para actualizarlas HQ que nose si sirve :
Код:
stock ActualizarHQ(playerid)
{
new CArch[19];
format(CArch,sizeof(CArch),"hqs/%d.ini",playerid);//el destino para guardar
new INI:Arch = INI_Open(CArch);
INI_SetTag(Arch,"Creadas HQ");//el TAg con el que lo leeremos al archivo (en el ini saldrб [data])
INI_WriteFloat(Arch,"Entrada_x",PickupHQ[playerid][Entrada_x]);
INI_WriteFloat(Arch,"Entrada_y",PickupHQ[playerid][Entrada_y]);
INI_WriteFloat(Arch,"Entrada_z",PickupHQ[playerid][Entrada_z]);
INI_WriteFloat(Arch,"Salida_x",PickupHQ[playerid][Salida_x]);
INI_WriteFloat(Arch,"Salida_y",PickupHQ[playerid][Salida_y]);
INI_WriteFloat(Arch,"Salida_z",PickupHQ[playerid][Salida_z]);
INI_WriteInt(Arch,"Interior",PickupHQ[playerid][Int]);
INI_WriteInt(Arch,"VirtualWorld",PickupHQ[playerid][VW]);
INI_WriteString(Arch,"Faccion",PickupHQ[playerid][Faccion]);
INI_Close(Arch);//cerramos el archivo
}
Respuesta: [Problema] Con comando -
OTACON - 09.04.2013
Cambia este:
pawn Код:
PickupHQ[playerid][Faccion] = nombrehq;
Por Este:
pawn Код:
format(PickupHQ[playerid][Faccion], 128, "%s", Nombrehq);