Wysłany: 2013-06-16, 18:00
Rumun
Wiek: 30 Na forum: 5235 dni Posty: 316
Nick w MP: Rumun
Piwa : 25
Witam.Mam problem z pickupem,kt?ry po wej?ciu w niego powinien znikn??,ale...Gdy ja stworze go komenda i w niego wejd? zniknie lecz gdy stworz? go ja a wejdzie w niego inna osoba pickup nie znika.Oto kod:
Kod: public OnPlayerPickUpPickup(playerid, pickupid)
{
if(pickupid == PFigurka)
{
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid, name, sizeof(name));
new str[128];
GivePlayerMoney(playerid, 5000);
format(str,128,"Gracz %s znalaz? figurke.", name);
SendClientMessageToAll(0x1EFF1EFF, str);
TextDrawHideForAll(FigurkaTD);
DeletePVar(playerid, "usufig");
return 1;
}
return 1;
}
+ Komenda na tworzenie:
Kod: CMD:figurka(playerid, cmdtext[])
{
if(GetPVarInt(playerid, "usufig") != 0)
return SendClientMessage(playerid, -1, "Figurka zosta?a ju? pod?o?ona.");
if(isnull(cmdtext))
return SendClientMessage(playerid, 0x33AA33AA, "Wpisz: /figurka (podpowiedz)");
if(!IsPlayerAdmin(playerid))
return SendClientMessage(playerid, -1, "Nie jeste? administratorem");
new Float:X[3];
GetPlayerPos(playerid, X[0], X[1], X[2]);
TextDrawShowForAll(FigurkaTD);
new StringF[128];
format(StringF,128,"Figurka zosta?a pod?o?ona.Podpowied?: %s", cmdtext);
SendClientMessageToAll(0x33AA33AA, StringF);
SetPVarInt(playerid, "usufig", 1);
PFigurka = CreatePickup(1210, 3, X[0]+2, X[1]+1, X[2], -1);
format(StringF,128,"Figurka zostala podlozona przez administratora.Podpowiedz: %s", cmdtext);
TextDrawSetString(FigurkaTD, StringF);
return 1;
}
Za pomoc piwko.
+
Chcia?bym wykona? te? komend? dla gracza jak /wyslijscore gracz po wpisaniu tej cmd wysy?a ile? tam score innemu ,a jemu score si? odejmuje lecz co? nie wychodzi,pr?bowa?em zmienia? z podobnej cmd na dawanie kasy,ale niestety nie udawa?o si?.Jak kto? by pokaza? jak to ma wygl?da? by? bym wdzi?czny.
Wysłany: 2013-06-17, 14:16
optimus
PawnoMen
Wiek: 27 Na forum: 5613 dni Posty: 453
Nick w MP: [PMS]ReveresPL
Piwa : 159
Ja u CB nie widze funkcji na rozwalenie tego pickupa.
Zrob tak i powiedz czy dziala:
Kod:
public OnPlayerPickUpPickup(playerid, pickupid)
{
if(pickupid == PFigurka)
{
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid, name, sizeof(name));
new str[128];
GivePlayerMoney(playerid, 5000);
format(str,128,"Gracz %s znalaz? figurke.", name);
SendClientMessageToAll(0x1EFF1EFF, str);
TextDrawHideForAll(FigurkaTD);
DestroyPickup(PFigurka);
DeletePVar(playerid, "usufig");
return 1;
}
return 1;
}
Za wole +rep zaamiast piwka
komenda na dawanie respa cmd jest tworzone w ZCMD
Kod: CMD:dajscore(playerid, cmdtext)
{
new id, score;
if(sscanf(cmdtext, "ud", id, score))
{
return SendClientMessage(playerid, -1, "Blad: Wpisz /dajscore [id gracza] [score]"), 1;
}
if(GetPlayerScore(playerid) < score)
{
return SendClientMessage(playerid, -1, "Nie masz tyle score), 1;
}
if(OnPlayerConnect(id))
{
return SendClientMessage(playerid, -1, "Nie ma gracza o podanym ID"), 1;
}
new scores = GetPlayerScore(playerid) - score;
SetPlayerScore(playerid, scores);//odejmowanie punktow graczowi
SetPlayerScore(id, score);//dodawane graczowi id punktow
//daj tu info o transakcji
return 1;
}
Wysłany: 2013-06-17, 15:55
IgrexolonO
Wiek: 34 Na forum: 6809 dni Posty: 1386
Piwa : 1062
^ @Optimus, masz pare b??d?w.
Kod: CMD:wyslijscore(playerid, p[])
{
if(isnull(p)) return SendClientMessage(playerid, -1, "U?ycie: /wyslijscore <id gracza> <ilo?? score>"), 1;
new player[4];
strmid(player, p, 0, strfind(p, " ", true));
strdel(p, 0, strfind(p, " ", true)+1);
if(!IsPlayerConnected(strval(player))) return SendClientMessage(playerid, -1, "Gracz, kt?rego wybra?e? nie jest obecny na serwerze!"), 1;
if(strval(p) > GetPlayerScore(playerid)) return SendClientMessage(playerid, -1, "Ilo?? score, kt?r? poda?e? jest nieadekwatna do Twojej!"), 1;
SetPlayerScore(strval(player), GetPlayerScore(strval(player)) + strval(p));
SetPlayerScore(playerid, GetPlayerScore(playerid) - strval(p));
new stringe[128];
format(stringe, sizeof(stringe), "Otrzyma?e? %d punkt?w score od gracza %s!", strval(p), PlayerName(playerid));
SendClientMessage(strval(player), -1, stringe);
format(stringe, sizeof(stringe), "Przekaza?e? %d punkt?w score na rzecz gracza %s!", strval(p), PlayerName(strval(player)));
SendClientMessage(playerid, -1, stringe);
return 1;
}
Ostatnio zmieniony przez IgrexolonO 2013-06-17, 22:32, w całości zmieniany 2 razy
Wysłany: 2013-06-17, 22:02
Rumun
Wiek: 30 Na forum: 5235 dni Posty: 316
Nick w MP: Rumun
Piwa : 25
Kod: error 035: argument type mismatch (argument 1)
Kod: SetPlayerScore(GetPlayerScore(player) + strval(p));
Kod: warning 202: number of arguments does not match definition
Kod: SetPlayerScore(GetPlayerScore(playerid) - strval(p));
Kod:
error 035: argument type mismatch (argument 1)
Kod: SendClientMessage(player, -1, stringe);
Kod:
error 035: argument type mismatch (argument 1)
Kod: SendClientMessage(player, -1, stringe);
Wysłany: 2013-06-17, 22:32
IgrexolonO
Wiek: 34 Na forum: 6809 dni Posty: 1386
Piwa : 1062
Sorry. Poprawione, zobacz.
Wysłany: 2013-06-17, 22:41
Rumun
Wiek: 30 Na forum: 5235 dni Posty: 316
Nick w MP: Rumun
Piwa : 25
Dzi?kuje za pomoc dzia?a.
Wysłany: 2013-06-18, 05:41
optimus
PawnoMen
Wiek: 27 Na forum: 5613 dni Posty: 453
Nick w MP: [PMS]ReveresPL
Piwa : 159
No to rozumie IgrexolonO, nie wyzywasz mnie ze nie umiem tylko starasz sie poprawic Dzieki
Wysłany: 2013-06-19, 12:55
Rumun
Wiek: 30 Na forum: 5235 dni Posty: 316
Nick w MP: Rumun
Piwa : 25
Da?o by rad? z SendClientMessage zmieni? na GUI ? Obydwie informacje o tym,?e otrzymano i za wys?ano tyle i tyle score ?
Wysłany: 2013-06-19, 16:51
IgrexolonO
Wiek: 34 Na forum: 6809 dni Posty: 1386
Piwa : 1062
Wysłany: 2013-06-19, 16:59
black_mode
mrdrifter ;-)
Wiek: 29 Na forum: 4740 dni Posty: 20
Piwa : 12
Kod:
CMD:wyslijscore(playerid, p[])
{
#define message_to_gui(%0,%1,%2) ShowPlayerDialog(%0,9999,DIALOG_STYLE_MSGBOX,"Informacja", %2, "Zamknij", "")
if(isnull(p)) return message_to_gui(playerid, -1, "U?ycie: /wyslijscore <id gracza> <ilo?? score>");
new player[4];
strmid(player, p, 0, strfind(p, " ", true));
strdel(p, 0, strfind(p, " ", true)+1);
if(!IsPlayerConnected(strval(player))) return message_to_gui(playerid, -1, "Gracz, kt?rego wybra?e? nie jest obecny na serwerze!"), 1;
if(strval(p) > GetPlayerScore(playerid)) return message_to_gui(playerid, -1, "Ilo?? score, kt?r? poda?e? jest nieadekwatna do Twojej!"), 1;
SetPlayerScore(strval(player), GetPlayerScore(strval(player)) + strval(p));
SetPlayerScore(playerid, GetPlayerScore(playerid) - strval(p));
new stringe[128];
format(stringe, sizeof(stringe), "Otrzyma?e? %d punkt?w score od gracza %s!", strval(p), PlayerName(playerid));
message_to_gui(strval(player), -1, stringe);
format(stringe, sizeof(stringe), "Przekaza?e? %d punkt?w score na rzecz gracza %s!", strval(p), PlayerName(strval(player)));
message_to_gui(playerid, -1, stringe);
return 1;
}
Wysłany: 2013-06-19, 17:58
Rumun
Wiek: 30 Na forum: 5235 dni Posty: 316
Nick w MP: Rumun
Piwa : 25
IgrexolonO , dzi?kuje Ojcze.
black_mode , dzi?ki
Tagi: pickup :: nie...
Anonymous
Na forum: 245 dni
Posty: 1
Anonymous Koniecznie zajrzyj na: