Problem(error/warning): Kad si ID 0 i kad hoces da posaljes nekom duel, zahtev stigne sam sebi jer si ID 0, a dok na druge id-eve radi sve lepo.
Dio skripte: [ pawn ]Ako treba pisite dole.[ /pawn ]
Debug iz server_log(ukoliko je u pitanju crashanje servera - crashdetect log): [ code ]//[ /code ]
Slika/video ingame problema(obavezno ako je ingame problem): //
U vezi duela.
634
pregleda
10
postova
10. Avg. 2018.
Pa normalno da treba deo skripte ne znamo mi sta si ti pisao i sto nece taj deo sto saljes zahtev pa posalje id 0 znaci tu cmd ostavi ovde.... 😄
10. Avg. 2018.
Pa normalno da treba salji funkciju kojom saljes duel ili cmd ili sta vec nisam ja Milan Tarot a ni Vidoviti Saban..
10. Avg. 2018.
Hehehe, znao sam 🙂 😄
CMD:duel(playerid, params[])
{
new idx, tmp, tmp1, tmp2, tmp3, gun1, gun2, gun3, id, string;
tmp = strtok(params, idx);
tmp1 = strtok(params, idx);
tmp2 = strtok(params, idx);
tmp3 = strtok(params, idx);
if(!strlen(tmp))
{
if(sscanf(params, "uiii", id, gun1, gun2, gun3)) return SCM(playerid, -1, "Pomoc | Koristite: /duel [Korisnicki ID ili Ime Korisnika] [id 1. oruzja] [id 2. oruzja] [id 3. oruzja]");
SCM(playerid, -1, "Pomoc | Oruzje: 24 - eagle | 25 - shotgun | 26 - sawn-off | 30 - ak47 | 31 - m4 | 32 - tec9");
return 1;
}
if(!strlen(tmp1))
{
if(sscanf(params, "uiii", id, gun1, gun2, gun3)) return SCM(playerid, -1, "Pomoc | Koristite: /duel [Korisnicki ID ili Ime Korisnika] [id 1. oruzja] [id 2. oruzja] [id 3. oruzja]");
SCM(playerid, -1, "Pomoc | Oruzje: 24 - eagle | 25 - shotgun | 26 - sawn-off | 30 - ak47 | 31 - m4 | 32 - tec9");
return 1;
}
if(!strlen(tmp2))
{
if(sscanf(params, "uiii", id, gun1, gun2, gun3)) return SCM(playerid, -1, "Pomoc | Koristite: /duel [Korisnicki ID ili Ime Korisnika] [id 1. oruzja] [id 2. oruzja] [id 3. oruzja]");
SCM(playerid, -1, "Pomoc | Oruzje: 24 - eagle | 25 - shotgun | 26 - sawn-off | 30 - ak47 | 31 - m4 | 32 - tec9");
return 1;
}
if(!strlen(tmp3))
{
if(sscanf(params, "uiii", id, gun1, gun2, gun3)) return SCM(playerid, -1, "Pomoc | Koristite: /duel [Korisnicki ID ili Ime Korisnika] [id 1. oruzja] [id 2. oruzja] [id 3. oruzja]");
SCM(playerid, -1, "Pomoc | Oruzje: 24 - eagle | 25 - shotgun | 26 - sawn-off | 30 - ak47 | 31 - m4 | 32 - tec9");
return 1;
}
new playa;
new gunid1 = strval(tmp1);
new gunid2 = strval(tmp2);
new gunid3 = strval(tmp3);
if(gunid1 != 24 && gunid1 != 25 && gunid1 != 26 && gunid1 != 30 && gunid1 != 31 && gunid1 != 32)
{
SCM(playerid,-1, " {FFFFFF}[{F81414}Greska!{FFFFFF}] {C3C3C3}Ne mozete igrati duel sa tim oruzjem!");
return 1;
}
if(gunid2 != 24 && gunid2 != 25 && gunid2 != 26 && gunid2 != 30 && gunid2 != 31 && gunid2 != 32)
{
SCM(playerid,-1, " {FFFFFF}[{F81414}Greska!{FFFFFF}] {C3C3C3}Ne mozete igrati duel sa tim oruzjem!");
return 1;
}
if(gunid3 != 24 && gunid3 != 25 && gunid3 != 26 && gunid3 != 30 && gunid3 != 31 && gunid3 != 32)
{
SCM(playerid,-1, " {FFFFFF}[{F81414}Greska!{FFFFFF}] {C3C3C3}Ne mozete igrati duel sa tim oruzjem!");
return 1;
}
if(IsPlayerConnected(playa))
{
if(igraduel == 1)
{
SCM(playerid,-1, " {FFFFFF}[{F81414}Greska!{FFFFFF}] {C3C3C3}Taj igrac vec igra duel,pokusajte kasnije!");
return 1;
}
if(igraduel == 1)
{
SCM(playerid,-1, " {FFFFFF}[{F81414}Greska!{FFFFFF}] {C3C3C3}Vec igrate duel!");
return 1;
}
if(playa == playerid)
{
SCM(playerid,-1, " {FFFFFF}[{F81414}Greska!{FFFFFF}] {C3C3C3}Ne mozete igrati duel sami sa sobom!");
return 1;
}
if(togduel == 1)
{
SCM(playerid,-1,"{FFFFFF}[{F81414}Greska!{FFFFFF}] {C3C3C3}Igrac je pisao /togduel!");
return 1;
}
new globalstring;
format(string, sizeof(string), "Duel |{33CCFF} Pozvali ste igraca %s na duel", GetName(playa));
SCM(playerid, -1, string);
duelprotivnik = playa; // gdfe ti ne za ID i ta sranja /duel ID
duelpozivatelj = playerid;
duelgun1 = gunid1;
duelgun2 = gunid2;
duelgun3 = gunid3;
format(globalstring, sizeof(globalstring), "{FFFFFF}Igrac {FFFF00}%s{FFFFFF} vas je pozvao na duel\nOruzje:{FFFF00} %d|%d|%d\n{33CCFF}Prihvacate li?", GetName(playerid),duelgun1,duelgun2,duelgun3);
ShowPlayerDialog(id,DIALOG_DUELPOZIVNICA,DIALOG_STYLE_MSGBOX,"{33CCFF}Duel",globalstring,"Da","Ne");
SCM(playerid, -1, string);
}
else
{
SendClientMessage(playerid, -1, " {FFFFFF}[{F81414}Greska!{FFFFFF}] {C3C3C3}Pogresan ID Korisnika");
}
return 1;
}10. Avg. 2018.
PoÅ¡to ti je kod sranje itkd, odluÄio sam uzet sekundi i sredit ti i komandu i system. Ukoliko neÅ¡to ne razumijeÅ¡, piÅ¡i ovdije, takoÄ‘er koristi rBit plugin radi manje memorije. Ovo sam ti rijeÅ¡ia za 5min, ne znam jel Äe kod bit sjeban u pawnu jer sam radio u notepadu tako da ga samo poravnaj sa TAB-om, usput nisam testirao ali bi trebalo sve raditi. Uživaj.
// rBits + Vars
new
Bit1: get_DuelCheck = Bit1: false,
Bit1: get_DuelInvited = Bit1: false
GetDuelWeapons = -1,
GetDuelAmmo = -1,
GetPlayerDuelID = -1;
CMD:duel(playerid, params[]) {
new targetid, weaponid, weaponammo;
if(sscanf(params, "iiiii", targetid, weaponid, weaponid, weaponid, weaponammo))
return SendClientMessage(playerid, -1, ": /duel [weapon (1)] [weapon (2)] [weapon (3)] [weapon ammo].");
if(targetid == playerid)
return SendClientMessage(playerid, -1,": Ne mozete samog sebe izazvat.");
if(!IsPlayerConnected(targetid))
return SendClientMessage(playerid, -1, ": Pogresan id.");
if(Bit1_Get(get_DuelCheck, playerid))
return SendClientMessage(playerid, -1,": Vec ste u duelu.");
if(Bit1_Get(get_DuelCheck, targetid))
return SendClientMessage(playerid, -1,": Vec je u duelu taj igrac.");
// Send Message
va_SendClientMessage(playerid, -1, ": Izazvali ste %s na duel [weapon ids: %d|%d|%d] [ammo: %d].", GetName(targetid), weaponid, weaponid, weaponid, weaponammo);
va_SendClientMessage(playerid, -1, ": %s vas je izazvao na duel, da prihvatite kucajte /acceptduel, [weapon ids: %d|%d|%d] [ammo: %d].", GetName(playerid), weaponid, weaponid, weaponid, weaponammo);
// Duel Stats
GetDuelWeapons = weaponid;
GetDuelWeapons = weaponid;
GetDuelWeapons = weaponid;
GetDuelAmmo = weaponammo;
Bit1_Set(get_DuelInvited, targetid, true);
GetPlayerDuelID = playerid;
return (true);
}
SetDuelStats(playerid, targetid, weapon1, weapon2, weapon3, ammo)
{
/* Tu postavi gdje ce se spawnat u areni itkd, ovo ti je primjer samo za
rBits i postavljanje oruzija itkd */
// Set Weapons
GivePlayerWeapon(playerid, weapon1, ammo);
GivePlayerWeapon(playerid, weapon2, ammo);
GivePlayerWeapon(playerid, weapon3, ammo);
GivePlayerWeapon(targetid, weapon1, ammo);
GivePlayerWeapon(targetid, weapon2, ammo);
GivePlayerWeapon(targetid, weapon3, ammo);
// rBits
Bit1_Set(get_DuelCheck, playerid, true);
Bit1_Set(get_DuelCheck, targetid, true);
return (true);
}
ResetDualVariables(playerid)
{
// (!) OVU FUNKCIJU KORISTI KADA SE ZAVRSI DUEL DA BI SE rBits i Vars resetirale.
// rBits
Bit1_Set(get_DuelCheck, playerid, false);
Bit1_Set(get_DuelCheck, playerid, false);
Bit1_Set(get_DuelInvited, playerid, false);
// vars
GetPlayerDuelID = -1;
GetDuelAmmo = -1;
// ...
ResetPlayerWeapons(playerid);
return (true);
}
CMD:acceptduel(playerid, params[])
{
new
weapon, ammo;
weapon = GetDuelWeapons;
weapon = GetDuelWeapons;
weapon = GetDuelWeapons;
ammo = GetDuelAmmo;
/*......*/
if(!Bit1_Get(get_DuelInvited, playerid))
return SendClientMessage(playerid, -1,": Niste izazvani od nikoga.");
if(Bit1_Get(get_DuelInvited, playerid))
{
SetDuelStats(playerid, GetPlayerDuelID, weapon, weapon, weapon, ammo);
}
return (true);
}
10. Avg. 2018.
sry za dp pošto ne mogu editovat posljedni post.
Zamjeni rBitsove i varove za ove tu ispod, zaboravia san dodat "," nakon drugog bit-a.
Zamjeni rBitsove i varove za ove tu ispod, zaboravia san dodat "," nakon drugog bit-a.
// rBits + Vars
new
Bit1: get_DuelCheck = Bit1: false,
Bit1: get_DuelInvited = Bit1: false,
GetDuelWeapons = -1,
GetDuelAmmo = -1,
GetPlayerDuelID = -1;
11. Avg. 2018.
L3o wrote on August 10, 2018, 10:37 pm:
PoÅ¡to ti je kod sranje itkd, odluÄio sam uzet sekundi i sredit ti i komandu i system. Ukoliko neÅ¡to ne razumijeÅ¡, piÅ¡i ovdije, takoÄ‘er koristi rBit plugin radi manje memorije. Ovo sam ti rijeÅ¡ia za 5min, ne znam jel Äe kod bit sjeban u pawnu jer sam radio u notepadu tako da ga samo poravnaj sa TAB-om, usput nisam testirao ali bi trebalo sve raditi. Uživaj.
// rBits + Vars
new
Bit1: get_DuelCheck = Bit1: false,
Bit1: get_DuelInvited = Bit1: false
GetDuelWeapons = -1,
GetDuelAmmo = -1,
GetPlayerDuelID = -1;
CMD:duel(playerid, params[]) {
new targetid, weaponid, weaponammo;
if(sscanf(params, "iiiii", targetid, weaponid, weaponid, weaponid, weaponammo))
return SendClientMessage(playerid, -1, ": /duel [weapon (1)] [weapon (2)] [weapon (3)] [weapon ammo].");
if(targetid == playerid)
return SendClientMessage(playerid, -1,": Ne mozete samog sebe izazvat.");
if(!IsPlayerConnected(targetid))
return SendClientMessage(playerid, -1, ": Pogresan id.");
if(Bit1_Get(get_DuelCheck, playerid))
return SendClientMessage(playerid, -1,": Vec ste u duelu.");
if(Bit1_Get(get_DuelCheck, targetid))
return SendClientMessage(playerid, -1,": Vec je u duelu taj igrac.");
// Send Message
va_SendClientMessage(playerid, -1, ": Izazvali ste %s na duel [weapon ids: %d|%d|%d] [ammo: %d].", GetName(targetid), weaponid, weaponid, weaponid, weaponammo);
va_SendClientMessage(playerid, -1, ": %s vas je izazvao na duel, da prihvatite kucajte /acceptduel, [weapon ids: %d|%d|%d] [ammo: %d].", GetName(playerid), weaponid, weaponid, weaponid, weaponammo);
// Duel Stats
GetDuelWeapons = weaponid;
GetDuelWeapons = weaponid;
GetDuelWeapons = weaponid;
GetDuelAmmo = weaponammo;
Bit1_Set(get_DuelInvited, targetid, true);
GetPlayerDuelID = playerid;
return (true);
}
SetDuelStats(playerid, targetid, weapon1, weapon2, weapon3, ammo)
{
/* Tu postavi gdje ce se spawnat u areni itkd, ovo ti je primjer samo za
rBits i postavljanje oruzija itkd */
// Set Weapons
GivePlayerWeapon(playerid, weapon1, ammo);
GivePlayerWeapon(playerid, weapon2, ammo);
GivePlayerWeapon(playerid, weapon3, ammo);
GivePlayerWeapon(targetid, weapon1, ammo);
GivePlayerWeapon(targetid, weapon2, ammo);
GivePlayerWeapon(targetid, weapon3, ammo);
// rBits
Bit1_Set(get_DuelCheck, playerid, true);
Bit1_Set(get_DuelCheck, targetid, true);
return (true);
}
ResetDualVariables(playerid)
{
// (!) OVU FUNKCIJU KORISTI KADA SE ZAVRSI DUEL DA BI SE rBits i Vars resetirale.
// rBits
Bit1_Set(get_DuelCheck, playerid, false);
Bit1_Set(get_DuelCheck, playerid, false);
Bit1_Set(get_DuelInvited, playerid, false);
// vars
GetPlayerDuelID = -1;
GetDuelAmmo = -1;
// ...
ResetPlayerWeapons(playerid);
return (true);
}
CMD:acceptduel(playerid, params[])
{
new
weapon, ammo;
weapon = GetDuelWeapons;
weapon = GetDuelWeapons;
weapon = GetDuelWeapons;
ammo = GetDuelAmmo;
/*......*/
if(!Bit1_Get(get_DuelInvited, playerid))
return SendClientMessage(playerid, -1,": Niste izazvani od nikoga.");
if(Bit1_Get(get_DuelInvited, playerid))
{
SetDuelStats(playerid, GetPlayerDuelID, weapon, weapon, weapon, ammo);
}
return (true);
}
Opet kad sam ID 0 i kad posaljem duel nekome stigne meni zahtev
11. Avg. 2018.
Zameni
Sa
va_SendClientMessage(playerid, -1, ": Izazvali ste %s na duel [weapon ids: %d|%d|%d] [ammo: %d].", GetName(targetid), weaponid, weaponid, weaponid, weaponammo);
va_SendClientMessage(playerid, -1, ": %s vas je izazvao na duel, da prihvatite kucajte /acceptduel, [weapon ids: %d|%d|%d] [ammo: %d].", GetName(playerid), weaponid, weaponid, weaponid, weaponammo);Sa
va_SendClientMessage(playerid, -1, ": Izazvali ste %s na duel [weapon ids: %d|%d|%d] [ammo: %d].", GetName(targetid), weaponid, weaponid, weaponid, weaponammo);
va_SendClientMessage(targetid, -1, ": %s vas je izazvao na duel, da prihvatite kucajte /acceptduel, [weapon ids: %d|%d|%d] [ammo: %d].", GetName(playerid), weaponid, weaponid, weaponid, weaponammo);11. Avg. 2018.
@тιмιc evo deÄko gore ti je sredio to sa slanjem poruke, umijesto da Å¡alje "targetid-u" sluÄajno sam stavio da Å¡alje igraÄu koji je koristio komandu obje poruke. Ovo ostalo bi trebalo sve raditi.
11. Avg. 2018.
ᴢɪᴠᴋá´á´ ɪᴄ wrote on August 10, 2018, 8:29 pm:
Pa normalno da treba salji funkciju kojom saljes duel ili cmd ili sta vec nisam ja Milan Tarot a ni Vidoviti Saban..
HAHAHAHAHAHAHAHAHAHAHHAHAHAHAHAHAHAHAHAHHAHAAH
Morate biti prijavljeni da biste odgovorili na ovu temu.
Prijava