[Pomoc] Ban/unban

Započeo Crazyn3ss
26. Apr. 2013. Zaključano
1,428
pregleda
21
postova
[WW]ivan
5
Kingpin
26. Apr. 2013.
Skripta: mojda od nule
Problem: radio sam po ovome tutu ban i unban sistem
http://balkan-samp.com/forum/index.php?topic=52692.msg383393#msg383393

e sad imam par problema
malo sam uredio komandu
prvi problem je: kad igraca unbanam on se izbrise iz one mape ali i dalje nemoze na srv, i onda kad restartam server moze uc, i kad ode relog opet mu izbaci to da je banan.

Drugi problem je: kad sam bano igrac bio je lvl 99 a kad sam ga bano posto je lvl 5 i ueo mu je sav novac sto je imo

evo komande ban
YCMD:ban(playerid, params[], help)
{
if(PlayerInfo >= 1)
{
new id, razlog, ip,godina, mjesec, dan, sat, minut, sekund;
if(sscanf(params,"us",id,razlog)) return SendClientMessage(playerid, -1, ""SVPLAVA"CrazyAC | "BIJELA"/ban [ID/Dio Imena] ");
    if(!IsPlayerConnected(id)) return SCM(playerid, -1, ""SVPLAVA"CrazyAC | "BIJELA"Taj igrac nije online!");
    if(PlayerInfo < 1338 && PlayerInfo >= 1338) return SCM(playerid, -1, ""SVPLAVA"CrazyAC | "BIJELA"Nemozete ovu komandu vrsit na headom");
new str;
new ime; GetPlayerName(playerid, ime, sizeof(ime));
new igrac; GetPlayerName(id, igrac, sizeof(igrac));
getdate(godina, mjesec, dan);
  gettime(sat, minut, sekund);
  GetPlayerIp(id, ip, 24);
//poruke za admina koji je bano igraca---------------------------------------------
if(PlayerInfo > 1)
  {
    SCM(playerid, -1,""CRVENA"______________________________________________________________________________");
    SCM(playerid, -1,""CRVENA"UPOZORENJE"BIJELA": Igracev level je veci od 1!");
    SCM(playerid, -1,""ZELENA"Slikaj ovo (F8) i stavi na popis banova na forumu!");
    SCMF(playerid, -1,""CRVENA"Igrac: %s | Level: %d | Novac: $%d (Banka: $%d)", igrac, PlayerInfo, PlayerInfo, PlayerInfo);
    SCMF(playerid, -1,""CRVENA"Datum: %d/%d/%d | Vrijeme: %d:%d:%d | IP: %s", dan, mjesec, godina, sat, minut, sekund, ip);
    SCM(playerid, -1,""ZUTA"IP adresa ovog igraca nije banovana. Da banujes IP adresu koristi /banip [IP adresa koja je napisana gore]");
    format(str, sizeof(str), ""CRVENA"AntiCit | "SPLAVA"BAN | "BIJELA"%s je bano igraca %s, razlog: %s", ime, igrac, razlog);
    AdminPoruka(-1, str, 1);
    SCM(playerid, -1,""CRVENA"______________________________________________________________________________");
}
else if(PlayerInfo <= 1)
{
SCM(playerid, -1,""CRVENA"______________________________________________________________________________");
SCM(playerid, -1,""BIJELA"Igracev level je 1!");
    SCM(playerid, -1,""ZELENA"Ovaj ban nije potrebno prijavljivat na forumu");
    SCMF(playerid, -1,""CRVENA"Igrac: %s | Level: %d | Novac: $%d (Banka: $%d)", igrac, PlayerInfo, PlayerInfo, PlayerInfo);
    SCMF(playerid, -1,""CRVENA"Datum: %d/%d/%d | Vrijeme: %d:%d:%d | IP: %s", dan, mjesec, godina, sat, minut, sekund, ip);
    SCM(playerid, -1,""ZUTA"IP adresa ovog igraca nije banovana. Da banujes IP adresu koristi /banip [IP adresa koja je napisana gore]");
    format(str, sizeof(str), ""CRVENA"AntiCit | "SPLAVA"BAN | "BIJELA"%s je bano igraca %s, razlog: %s", ime, igrac, razlog);
    AdminPoruka(-1, str, 1);
    SCM(playerid, -1,""CRVENA"______________________________________________________________________________");
}
//------------------------------------------------------------------------------
//poruke za igraca koji je dobio ban----------------------------------------------
SCM(id, -1,""CRVENA"______________________________________________________________________________");
SCM(id, -1,"[ISKLJUCENJE SA SERVERA] Ovo je obavjesetnje o vasem iskljucenju sa servera.");
format(str,128,""BIJELA"Admin koji vas je banovo: %s", ime);
SendClientMessage(id, 0xff0000aa, str);
format(str,128,""BIJELA"Razlog vaseg bana: %s", razlog);
SendClientMessage(id, 0xff0000aa, str);
  SCM(id, -1,""BIJELA"Ukoliko smatrate da je doslo do greske, slikajte ovo (F8) i zatrazite unban na nasem forumu.");
  SCM(id, -1,""BIJELA"Forum: www.forum.com");
  SCM(id, -1,""SPLAVA"Moguci razlozi bana: abusanje, cheat, vrijedanje, krsenje pravila, greska admina...");
//------------------------------------------------------------------------------
//poruka koja je prikazana svim igracima----------------------------------------
format(str,128,""CRVENA"BAN | Igrac: %s, Admin: %s, Razlog: %s",igrac, ime, razlog);
SendClientMessageToAll(0xff0000aa, str);
//------------------------------------------------------------------------------
new banfile;
format(banfile,64,BanFolder,igrac);
new File:ban = fopen(banfile, io_write);
fwrite(ban, " - BAN - \n");
new var; format(var,128,"Admin = %s\n", ime);
fwrite(ban,var); format(var,128,"Razlog = %s\n", razlog);
fwrite(ban,var);
fclose(ban);
Kick(id);
GetPlayerIp(id, ip, 24);
  format(str, 128, "| BAN | Admin: %s | Igrac: %s | Razlog: %s | IP igraca: %s", ime, igrac, razlog, ip);
    UpisiLog(BANS, str);

}
else return SCM(playerid, -1, ""CRVENA"(admin) "BIJELA"Samo admini!");
return 1;
}
[WW]ivan
5
Kingpin
26. Apr. 2013.
komanda za unban je ist ta ko na tom tutu i taj dio sto ide pod conect
[WW]ivan
5
Kingpin
26. Apr. 2013.
e de da te piram jel ova linija moze ic ovako
	    SCMF(playerid, -1,""CRVENA"Igrac: %s | Level: %d | Novac: $%d (Banka: $%d)", igrac, PlayerInfo, PlayerInfo, PlayerInfo);


ovo me zanima za novac i to jel se moze to tako oznacit, da nije do toga da mu mice pare i snizuje lvl
[WW]ivan
5
Kingpin
26. Apr. 2013.
David (Sabljak) A.k.A SABO(T) wrote on April 26, 2013, 6:07 pm:
ne, prema toj liniji on samo iscitava njegov level i novac :S

ok, to sam i tjeo da bude tako, samo neznam zasto mu mjenja level i novac

edit i da baca mi erore na ovo linije
D:\samp\Other Dimensions RP\gamemodes\od-rp.pwn(506😎 : warning 219: local variable "PlayerName" shadows a variable at a preceding level
D:\samp\Other Dimensions RP\gamemodes\od-rp.pwn(5071) : error 012: invalid function call, not a valid address
D:\samp\Other Dimensions RP\gamemodes\od-rp.pwn(5071) : warning 215: expression has no effect
D:\samp\Other Dimensions RP\gamemodes\od-rp.pwn(5071) : error 001: expected token: ";", but found ")"
D:\samp\Other Dimensions RP\gamemodes\od-rp.pwn(5071) : error 029: invalid expression, assumed zero
D:\samp\Other Dimensions RP\gamemodes\od-rp.pwn(5071) : fatal error 107: too many error messages on one line

na ovoj liniji
format(lokacija,128,"Banovi/%s.ini",PlayerName(playerid));
i ovaj prvi eror na ovome
new PlayerName;

al sve je definirano zasto to sad
new PlayerName;
GetPlayerName(playerid, PlayerName, sizeof(PlayerName));
Blaeks_Biofor
5
Forum Don
26. Apr. 2013.
promeni ime varijable PlayerName u neko drugo, posto vec imas takvu varijablu
[WW]ivan
5
Kingpin
26. Apr. 2013.
i dalje baca ove erore
D:\samp\Other Dimensions RP\gamemodes\od-rp.pwn(5071) : error 012: invalid function call, not a valid address
D:\samp\Other Dimensions RP\gamemodes\od-rp.pwn(5071) : warning 215: expression has no effect
D:\samp\Other Dimensions RP\gamemodes\od-rp.pwn(5071) : error 001: expected token: ";", but found ")"
D:\samp\Other Dimensions RP\gamemodes\od-rp.pwn(5071) : error 029: invalid expression, assumed zero
D:\samp\Other Dimensions RP\gamemodes\od-rp.pwn(5071) : fatal error 107: too many error messages on one line


na ovoj liniji
format(lokacija,128,"Banovi/%s.ini",PlayerName2(playerid));


edit uklonio sam ovaj (playerid) i ne baca erore?
[WW]ivan
5
Kingpin
27. Apr. 2013.
David (Sabljak) A.k.A SABO(T) wrote on April 27, 2013, 1:37 am:
Ne getas mu online id-.- citaj gore napiso sam ti

User[max...

pa jesam
[WW]ivan
5
Kingpin
27. Apr. 2013.
evo gledaj kako je kod me

ovo ide pod onplayerconnect
						new PlayerName2;
GetPlayerName(playerid, PlayerName2, sizeof(PlayerName2));
new lokacija;
format(lokacija,128,"Banovi/%s.ini",PlayerName2);
if(fexist(lokacija))
{
SCM(playerid, -1, ""CRVENA"AntiCit| "SPLAVA"BAN | "BIJELA"Vi ste banani na ovom serveru");
SCM(playerid, -1, ""CRVENA"(unban) "BIJELA"Za unban vise na forumu "ZUTA"(www.forum.com)");
Kick(playerid);
}


komanda unban
YCMD:unban(playerid, params[], help)
{
if(PlayerInfo >= 1338)
{
new ime; GetPlayerName(playerid, ime, sizeof(ime));
new user;
    new lokacija, string;
if(sscanf(params,"s",user)) return SCM(playerid, -1, ""SVPLAVA"AntiCit| "BIJELA"/unban [Ime Igraca]");
format(lokacija,128,"Banovi/%s.ini",user);
if(!fexist(lokacija)) return SCM(playerid, -1,""SVPLAVA"AntiCit| "BIJELA"Taj igrac nije banan");
else
{
fremove(lokacija);
format(string, sizeof(string),""CRVENA"AntiCit|"SPLAVA"UNBAN | "BIJELA"%s je unbanan od admina %s!", user,ime);
  AdminPoruka(-1,string,1);
}
}
else return SCM(playerid, -1, ""CRVENA"(admin) "BIJELA"Samo admini!");
return 1;
}


i komanda ban

to je taj dio kad bana igraca
		new banlok;
format(banlok,64,"Banovi/%s.ini",igrac);
new File:ban = fopen(banlok, io_write);
new var; format(var,128,"Admin: %s \n",ime);
fwrite(ban,var);
format(var,128,"Razlog: %s",razlog);
fwrite(ban,var);
fclose(ban);
Kick(id);


bez erora je, samo sto nisam jos testo, maknio sam ono playerid sto je bilo u zagradi jer je na tom baco erore, i tako na vise mjesta
[WW]ivan
5
Kingpin
27. Apr. 2013.
David (Sabljak) A.k.A SABO(T) wrote on April 27, 2013, 8:56 am:
I cek ne radi sad?


nisam jos testo, cekam bratica da dode pa da testam, javit cu ti ovdje jos

edit: de da te pitam koju bi funkciju mogo koristi za banip? znam da ima ona neke od /rcon banip al nmg se sjetit kak ide
ovo komande
YCMD:banip(playerid, params[], help)//nije gotova
{
if(PlayerInfo >= 1)
{
    new param, ip, ime;
    new CmdString;
    if(sscanf(params, "s", param)) return SCM(playerid, -1, ""SVPLAVA"Anticit| "BIJELA"/banip [IP adresa]");
    if(strlen(param) < 7) return SCM(playerid, -1, ""SVPLAVA"Anticit| "BIJELA"IP adresa je previse kratka!");
    if(strlen(param) > 20) return SCM(playerid, -1, ""SVPLAVA"Anticit| "BIJELA"IP adresa je previse dugacka!");
    RPIme(playerid, ime);
    GetPlayerIp(playerid, ip, 24);
    format(CmdString, sizeof CmdString, ""CRVENA"Anticit|"SPLAVA" BAN IP | "BIJELA"%s je banovao IP %s.", ime, param);
    AdminPoruka(-1, CmdString, 1);

}
else return SCM(playerid, -1, ""CRVENA"(admin) "BIJELA"Samo admini!");
return 1;
}
[WW]ivan
5
Kingpin
27. Apr. 2013.
David (Sabljak) A.k.A SABO(T) wrote on April 27, 2013, 9:52 am:
        format(string, sizeof(string),"banip %s", param);
        SendRconCommand(string);
        SendRconCommand("reloadbans");


jel isto tako i za unban
samo unbanip %s
[WW]ivan
5
Kingpin
27. Apr. 2013.
David (Sabljak) A.k.A SABO(T) wrote on April 27, 2013, 10:53 am:
Jeste sefe


aha, evo ovako..
radi sve mogu uc, ali kad graca banam ne izbacim mu onaj text
stavit cu mu timer pa ce valjat
ali mu je skinio pare na 0 nezz zasto?
[WW]ivan
5
Kingpin
27. Apr. 2013.
David (Sabljak) A.k.A SABO(T) wrote on April 27, 2013, 1:23 pm:
timer za Kick(); da...

Moguce da mu na connectu postavljas enum novaca na 0; i kako mu on ne iscita account spremi valjda to i onda mu postavi na 0 kad se logira


nisam to stavljo pod connect

e i dal da stavljam ovako za timer
SetTimer("Ban", 1000, false);

ili ovako
SetTimerEx("Ban", 1000, false, "i",playerid);
Blaeks_Biofor
5
Forum Don
27. Apr. 2013.
Crazyn3ss wrote on April 27, 2013, 1:23 pm:
timer za Kick(); da...

Moguce da mu na connectu postavljas enum novaca na 0; i kako mu on ne iscita account spremi valjda to i onda mu postavi na 0 kad se logira


nisam to stavljo pod connect

e i dal da stavljam ovako za timer
SetTimer("Ban", 1000, false);

ili ovako
SetTimerEx("Ban", 1000, false, "i",playerid);
settimerex, posto svojstveno moras, za igraca
[WW]ivan
5
Kingpin
27. Apr. 2013.
Blaeks wrote on April 27, 2013, 1:23 pm:
timer za Kick(); da...

Moguce da mu na connectu postavljas enum novaca na 0; i kako mu on ne iscita account spremi valjda to i onda mu postavi na 0 kad se logira


nisam to stavljo pod connect

e i dal da stavljam ovako za timer
SetTimer("Ban", 1000, false);

ili ovako
SetTimerEx("Ban", 1000, false, "i",playerid);
settimerex, posto svojstveno moras, za igraca

ok,
ali evo ovako mi je kad se igraca spawna,
	GivePlayerMoney(playerid, PlayerInfo);
SetPlayerScore(playerid, PlayerInfo);
SetPlayerSkin(playerid, PlayerInfo);


sto bi znacilo da mu postavi te stvari, al zasto mu on sad promjeni sve to,
jel mogu da kad igraca bana da pokrenem public SacuvajIgraca(id);
jel bi to sta pomoglo😕
Blaeks_Biofor
5
Forum Don
27. Apr. 2013.
Crazyn3ss wrote on April 27, 2013, 1:23 pm:
timer za Kick(); da...

Moguce da mu na connectu postavljas enum novaca na 0; i kako mu on ne iscita account spremi valjda to i onda mu postavi na 0 kad se logira


nisam to stavljo pod connect

e i dal da stavljam ovako za timer
SetTimer("Ban", 1000, false);

ili ovako
SetTimerEx("Ban", 1000, false, "i",playerid);
settimerex, posto svojstveno moras, za igraca

ok,
ali evo ovako mi je kad se igraca spawna,
	GivePlayerMoney(playerid, PlayerInfo);
SetPlayerScore(playerid, PlayerInfo);
SetPlayerSkin(playerid, PlayerInfo);


sto bi znacilo da mu postavi te stvari, al zasto mu on sad promjeni sve to,
jel mogu da kad igraca bana da pokrenem public SacuvajIgraca(id);
jel bi to sta pomoglo😕
samo bi azuriralo variajble bannovanog korisnika

Morate biti prijavljeni da biste odgovorili na ovu temu.

Prijava

© 2026 SmartShark. All rights reserved.

Powered by Momentum|v2026.3.001 Alpha