Wysłany: 2013-04-02, 19:45
adalus1995
Wiek: 31 Na forum: 4893 dni Posty: 102
Piwa : 2
Mam taki kod
Kod: if(!strcmp(cmdtext, "/pacholek", true))
{
if(gTeam[playerid] == TEAM_POLICJA || gTeam[playerid] == TEAM_POMOC) {
new Float:x, Float:y, Float:z;
GetPlayerPos(playerid, x, y, z);
pacholek=CreateObject(1238, x, y, z - 0.5, 0.0, 0.0, 0.0);
SendClientMessage(playerid, 0xFFFFFFAA, "Stworzy?e? pacholek.");
}else{
SendClientMessage(playerid,-1, "Nie jeste? w Policji !");
}
return 1;
}
if(!strcmp(cmdtext, "/upacholek", true))
{
if(pacholek == 0) return SendClientMessage(playerid, -1, "Nie postawi?e? zadnego pacho?ka");
DestroyObject(pacholek);
return 1;
}
Tylko, ?e jak po?oze wiecej niz jeden pacholkow to wtedy usuwa sie jeden po wpisaniu /upacholek , + prosze o pomoc, co zrobic aby zrobic komende aby usuwala wszystkie pacholki?
Wysłany: 2013-04-02, 19:54
Quis
Wszechwiedzący
Wiek: 31 Na forum: 5146 dni Posty: 464
Nick w MP: Quis
Piwa : 1110
adalus1995 , bo masz tylko jedna zmienn?. Jak utworzysz nowy pacho?ek, to do zmiennej jest przypisywane nowe ID, a pozosta?e znika z pami?ci. Usuwasz pacho?ek ostatnio utworzony, bo pozosta?e przypad?y.
Spr?buj tak:
Kod: #define MAX_PACHOLKOW 100
new pacholek[MAX_PACHOLKOW];
new pacholekIdx = 0;
Kod: if(!strcmp(cmdtext, "/pacholek", true))
{
if(pacholekIdx == MAX_PACHOLKOW-1)
{
SendClientMessage(playerid, -1, "Osi?gni?to limit pacho?k?w.");
return 1;
}
if(gTeam[playerid] == TEAM_POLICJA || gTeam[playerid] == TEAM_POMOC) {
new Float:x, Float:y, Float:z;
GetPlayerPos(playerid, x, y, z);
pacholek[pacholekIdx]=CreateObject(1238, x, y, z - 0.5, 0.0, 0.0, 0.0);
pacholekIdx++;
SendClientMessage(playerid, 0xFFFFFFAA, "Stworzy?e? pacholek.");
}else{
SendClientMessage(playerid,-1, "Nie jeste? w Policji !");
}
return 1;
}
if(!strcmp(cmdtext, "/upacholekall", true)) //usuwa wszystkie pacho?ki
{
if(pacholekIdx == 0) return SendClientMessage(playerid, -1, "Nie postawi?e? zadnego pacho?ka");
for(new i=0; i<MAX_PACHOLKOW; i++)
if(IsValidObject(pacholek[i])
DestroyObject(pacholek[i]);
pacholekIdx = 0;
SendClientMessage(playerid, -1, "Pacho?ki usuni?te");
return 1;
}
?eby zrobi? usuwanie jednego pacho?ka, musisz zrobi? pobieranie numerku, nie pami?tam jak to si? robi?o pod strcmp, co? ze strtokiem. I potem robisz IsValidObject(pacholerk[podanyParametr]) aby sprawdzi? czy poda? prawid?owy numerek, a DestroyObject(pacholerk[podanyParametr]) aby go usun??.
Pozdrawiam
Wysłany: 2013-04-02, 19:58
adalus1995
Wiek: 31 Na forum: 4893 dni Posty: 102
Piwa : 2
Kod: C:\Users\Adam\Desktop\wszystkieinfoogm\ppt2012.pwn(28) : error 001: expected token: "]", but found ";"
C:\Users\Adam\Desktop\wszystkieinfoogm\ppt2012.pwn(31) : error 001: expected token: ";", but found "new"
C:\Users\Adam\Desktop\wszystkieinfoogm\ppt2012.pwn(3264) : error 001: expected token: ")", but found ";"
C:\Users\Adam\Desktop\wszystkieinfoogm\ppt2012.pwn(3264) : error 036: empty statement
C:\Users\Adam\Desktop\wszystkieinfoogm\ppt2012.pwn(3264) : warning 215: expression has no effect
C:\Users\Adam\Desktop\wszystkieinfoogm\ppt2012.pwn(3264) : error 001: expected token: ";", but found ")"
C:\Users\Adam\Desktop\wszystkieinfoogm\ppt2012.pwn(3264) : fatal error 107: too many error messages on one line
Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
6 Errors.
Wysłany: 2013-04-02, 20:59
Quis
Wszechwiedzący
Wiek: 31 Na forum: 5146 dni Posty: 464
Nick w MP: Quis
Piwa : 1110
Poka? jak to wklei?e? i konkretne linijki... A nie sobie b??dy same wstawi?e? i my?lisz ?e wystarczy.
Wysłany: 2013-04-03, 14:03
adalus1995
Wiek: 31 Na forum: 4893 dni Posty: 102
Piwa : 2
Linijka od 3257 do 3287:
Kod: if(!strcmp(cmdtext, "/pacholek", true))
{
if(pacholekIdx == MAX_PACHOLKOW-1)
{
SendClientMessage(playerid, -1, "Osi?gni?to limit pacho?k?w.");
return 1;
}
if(gTeam[playerid] == TEAM_POLICJA || gTeam[playerid] == TEAM_POMOC) {
new Float:x, Float:y, Float:z;
GetPlayerPos(playerid, x, y, z);
pacholek[pacholekIdx]=CreateObject(1238, x, y, z - 0.5, 0.0, 0.0, 0.0);
pacholekIdx++;
SendClientMessage(playerid, 0xFFFFFFAA, "Stworzy?e? pacholek.");
}else{
SendClientMessage(playerid,-1, "Nie jeste? w Policji !");
}
return 1;
}
if(!strcmp(cmdtext, "/upacholekall", true)) //usuwa wszystkie pacho?ki
{
if(pacholekIdx == 0) return SendClientMessage(playerid, -1, "Nie postawi?e? zadnego pacho?ka");
for(new i=0; i<MAX_PACHOLKOW; i++)
if(IsValidObject(pacholek[i])
DestroyObject(pacholek[i]);
pacholekIdx = 0;
SendClientMessage(playerid, -1, "Pacho?ki usuni?te");
return 1;
}
Kod: Pod include:
#define MAX_PACHOLKOW 100
Tam gdzie mam newy
Kod: new pacholek[MAX_PACHOLKOW];
new pacholekIdx = 0;
Tagi: usuwa :: jeden :: pachołek
Anonymous
Na forum: 245 dni
Posty: 1
Anonymous Koniecznie zajrzyj na: