xt3z0ne
-
Posts
168 -
Joined
-
Last visited
Never
Content Type
Profiles
Forums
News
Documentation
Posts posted by xt3z0ne
-
-
Acolo la TP_KickWithMessage sterge "SendClientMessage".
Imd voi face:D
Dar la partea ce lanta pe care ti-am spus ma poti ajuta acolo?
Eu cand dau ban la cineva sai dea clearchat si sai apara doar text-u cai banat
Ex
Player ala ( ID:1 ) Ai primit interdictie dela Administratoru Banned ( ID:0 )
Pentru:99 de zile
Motivul: Reclama!
Daca crezi ca ai primit ban fara sa faci prosti te rugam sa faci o poza apasand pe butonu F8 dupa aplica o cerere un-ban pe forum www.sa-mp.ro
Si dupa pe server sa arate la jucatori
========= [ Ban Info ===========
Jucatoru ala Aprimit ban dela Administratoru Banned
Pentru: 99 de zile.
Motiv: Reclama!
============================
Ma poti ajuta?
-
Din cate vad tu ai acolo caracterul pentru o linie noua ('\n'). El nu merge in string-uri pe care le afisezi, doar in dialoguri merge.
Inlocuieste
[pawn]format(String,sizeof(String),"{33ff33}Player{a3a3a3} %s (ID: %d)\n {33ff33}Has been banned by administrator{ff0015} %s (ID: %d)\n{33ff33} for Days{ff002f} %s.\n{ffff00} Reason: %s",BannedName,BannedID,BannerName,BannerID,TB_ConvertTime(Time),Reason);[/pawn]
cu
[pawn]format(String,sizeof(String),"{33ff33}Player{a3a3a3} %s (ID: %d) {33ff33}Has been banned by administrator{ff0015} %s (ID: %d)",BannedName,BannedID,BannerName,BannerID);
SendClientMessageToAll(0xFF0000FF, String);
format(String,sizeof(String), "{33ff33}for Days{ff002f} %s.{ffff00} Reason: %s", TB_ConvertTime(Time),Reason);[/pawn]
Stimate WopsS.
Am facut cum mi-ati spus bun perfect apare text-u dar nu.
Apare cum trebuie.
Eu dupa ce iam dat ban jucator-ului i apare text-u dar
Nu cum trebuie.
I apare asa.
Poza:
Iar mie imi apare asa
Poza: [img width=500 height=375]http://www.imgz.ro/i/1398292662-sa-mp-000.png
Dar chesti-a este ca apare la toti ce trebuie sa i scrie
Lui
Adica
Ex:
Player ala ( ID:1 ) Ai primit interdictie dela Administratoru Banned ( ID:0 )
Pentru:99 de zile
Motivul: Reclama!
Daca crezi ca ai primit ban fara sa faci prosti te rugam sa faci o poza apasand pe butonu F8 dupa aplica o cerere un-ban pe forum www.sa-mp.ro
Iar la cei lanti jucatori trebuie sa apare ceva de genu.
========= [ Ban Info ===========
Jucatoru ala Aprimit ban dela Administratoru Banned
Pentru: 99 de zile.
Motiv: Reclama!
============================
Dar nu apare asa.
Uite niste poze.
+ I arata de 2 ori for Day`s:|
[img width=500 height=312]http://www.imgz.ro/i/1398292885-sa-mp-140.png
[img width=500 height=312]http://www.imgz.ro/i/1398292885-sa-mp-1401.png
Dupa ce iam dat ban am incercat sa a connectez cu contu lui.
Si uite si tu i da voie sa se login:|
[img width=500 height=375]http://www.imgz.ro/i/1398293343-sa-mp-002.png
Am bagat parola si tot imi da voie sa joc:|
-
Mai exact ce trebuie sa-i arate?
Pai ceva de genu
===============================
{33ff33}Player{a3a3a3} %s (ID: %d)\n
{33ff33}Has been banned by administrator{ff0015} %s (ID: %d)\n
{33ff33} At time{ff002f} %s.\n
{ffff00} Reason: %s
===============================
Imd dupa ce eu iam dat ban sai arate dece a luat ban
Ex
===============================
Player: King_Of_King ( ID: 0 )
Ai fost banat de catre Administratoru xt3z0ne ( ID:1 )
Pentru 99 zile.
Motiv: Reclama
===============================
Ia eu am facut asa
[pawn]
{33ff33}Player{a3a3a3} %s (ID: %d)\n {33ff33}Has been banned by administrator{ff0015} %s (ID: %d)\n{33ff33} At time{ff002f} %s.\n{ffff00} Reason: %s
[/pawn]
-
Ah... "[" inlocuieste-l cu "[".
Am facut cum mi-ai spus.
Si doar atat. I arata.
Uite aici tot fs`u
[pawn]
#include <a_samp>
#include <sscanf2>
#define FILTERSCRIPT
#include <zcmd>
new DB:Database;
new DBResult:DatabaseResult;
public OnFilterScriptInit()
{
Database = db_open("Bans.db");
DatabaseResult = db_query(Database,"CREATE TABLE IF NOT EXISTS Bans (Name CHAR(30),IP CHAR(30),BannerName CHAR(30),Time INT(10),Reason CHAR(30),Date CHAR(30))");
db_free_result(DatabaseResult);
return 1;
}
public OnFilterScriptExit()
{
db_close(Database);
return 1;
}
public OnPlayerConnect(playerid)
{
new String[300];
new PlayerName[30];
GetPlayerName(playerid,PlayerName,sizeof(PlayerName));
new PlayerIP[30];
GetPlayerIp(playerid,PlayerIP,sizeof(PlayerIP));
format(String,sizeof(String),"SELECT * FROM Bans WHERE Name = '%s' OR IP = '%s'",PlayerName,PlayerIP);
DatabaseResult = db_query(Database,String);
if(db_num_rows(DatabaseResult))
{
db_get_field_assoc(DatabaseResult,"Time",String,10);
if(strval(String) > gettime())
{
SendClientMessage(playerid,0x999999FF,"You are banned from this server.");
db_get_field_assoc(DatabaseResult,"Name",String,30);
format(String,sizeof(String),"Name: %s",String);
SendClientMessage(playerid,0xFF0000FF,String);
db_get_field_assoc(DatabaseResult,"IP",String,30);
format(String,sizeof(String),"IP: %s",String);
SendClientMessage(playerid,0xFF0000FF,String);
db_get_field_assoc(DatabaseResult,"BannerName",String,30);
format(String,sizeof(String),"Banner: %s",String);
SendClientMessage(playerid,0xFF0000FF,String);
db_get_field_assoc(DatabaseResult,"Time",String,10);
format(String,sizeof(String),"Time: %s",TB_ConvertTime(strval(String) - gettime()));
SendClientMessage(playerid,0xFF0000FF,String);
db_get_field_assoc(DatabaseResult,"Reason",String,30);
format(String,sizeof(String),"Reason: %s",String);
SendClientMessage(playerid,0xFF0000FF,String);
db_get_field_assoc(DatabaseResult,"Date",String,30);
format(String,sizeof(String),"Date: %s",String);
SendClientMessage(playerid,0xFF0000FF,String);
db_free_result(DatabaseResult);
SendClientMessage(playerid,0x999999FF,"If you want be unbanned before time write request at website www.ecila.ro");
SetTimerEx("TB_KickPlayer",1000,0,"i",playerid);
return 1;
}
if(strval(String) < gettime())
{
db_free_result(DatabaseResult);
format(String,sizeof(String),"DELETE FROM Bans WHERE Name = '%s' OR IP = '%s'",PlayerName,PlayerIP);
DatabaseResult = db_query(Database,String);
}
}
db_free_result(DatabaseResult);
return 1;
}
CMD:testban(playerid,params[])
{
if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid,0xFF0000FF,"This command is only for administrators.");
new PlayerID;
new Days;
new Reason[30];
if(sscanf(params,"iis[30]",PlayerID,Days,Reason)) return SendClientMessage(playerid,0xFF0000FF,"Usage /Ban [Player ID] [Days] [Reason].");
if(!IsPlayerConnected(PlayerID)) return SendClientMessage(playerid,0xFF0000FF,"Player with this ID isnt available.");
if(Days <= 0) return SendClientMessage(playerid,0xFF0000FF,"You entered bad time.");
if(strlen(Reason) <= 0 || strlen(Reason) > 30) return SendClientMessage(playerid,0xFF0000FF,"You must give reason, but not too long, maximally 30 characters.");
new String[300];
TB_BanPlayerByID(PlayerID,Days * 24 * 60 * 60,Reason,playerid);
new PlayerName[30];
GetPlayerName(PlayerID,PlayerName,sizeof(PlayerName));
format(String,sizeof(String),"You banned player %s (ID: %d) for Days %s. Reason: %s",PlayerName,PlayerID,TB_ConvertTime(Days * 24 * 60 * 60),Reason);
SendClientMessage(playerid,0xFF0000FF,String);
return 1;
}
COMMAND:banip(playerid,params[])
{
if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid,0xFF0000FF,"This command is only for administrators.");
new PlayerIP[30];
new Days;
new Reason[30];
if(sscanf(params,"s[30]is[30]",PlayerIP,Days,Reason)) return SendClientMessage(playerid,0xFF0000FF,"Usage /Banip [iP] [Days] [Reason].");
if(strlen(PlayerIP) <= 0 || strlen(PlayerIP) > 30) return SendClientMessage(playerid,0xFF0000FF,"You entered bad IP.");
if(Days <= 0) return SendClientMessage(playerid,0xFF0000FF,"You entered bad time.");
if(strlen(Reason) <= 0 || strlen(Reason) > 30) return SendClientMessage(playerid,0xFF0000FF,"You must give reason, but not too long, maximally 30 characters.");
new String[300];
TB_BanPlayerByIP(PlayerIP,Days * 24 * 60 * 60,Reason,playerid);
format(String,sizeof(String),"You banned IP %s for Days %s. Reason: %s",PlayerIP,TB_ConvertTime(Days * 24 * 60 * 60),Reason);
SendClientMessage(playerid,0xFF0000FF,String);
return 1;
}
COMMAND:unban(playerid,params[])
{
if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid,0xFF0000FF,"This command is only for administrators.");
if(isnull(params)) return SendClientMessage(playerid,0xFF0000FF,"Usage /Unban [Player Name].");
new String[300];
format(String,sizeof(String),"SELECT * FROM Bans WHERE Name = '%s'",params);
DatabaseResult = db_query(Database,String);
if(db_num_rows(DatabaseResult))
{
TB_UnbanPlayerByName(params,playerid);
format(String,sizeof(String),"You unbanned player %s.",params);
SendClientMessage(playerid,0x00FF00FF,String);
}
if(!db_num_rows(DatabaseResult))
{
SendClientMessage(playerid,0xFF0000FF,"This player isnt banned.");
db_free_result(DatabaseResult);
return 1;
}
return 1;
}
COMMAND:unbanip(playerid,params[])
{
if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid,0xFF0000FF,"This command is only for administrators.");
if(isnull(params)) return SendClientMessage(playerid,0xFF0000FF,"Usage /Unbanip [iP].");
new String[300];
format(String,sizeof(String),"SELECT * FROM Bans WHERE IP = '%s'",params);
DatabaseResult = db_query(Database,String);
if(db_num_rows(DatabaseResult))
{
TB_UnbanPlayerByIP(params,playerid);
format(String,sizeof(String),"You unbanned IP %s.",params);
SendClientMessage(playerid,0x00FF00FF,String);
}
if(!db_num_rows(DatabaseResult))
{
SendClientMessage(playerid,0xFF0000FF,"This IP isnt banned.");
db_free_result(DatabaseResult);
return 1;
}
return 1;
}
/*forward TB_KickPlayer(PlayerID);
public TB_KickPlayer(PlayerID)
{
Kick(PlayerID);
return 1;
}*/
stock TP_KickWithMessage(playerid, color, message[])
{
SendClientMessageToAll(color, message);
SendClientMessage(playerid, color, message);
SetTimerEx("TP_KickPublic", 1000, 0, "d", playerid);
}
forward TP_KickPublic(playerid);
public TP_KickPublic(playerid)
{
Kick(playerid);
}
stock TB_BanPlayerByID(BannedID,Time,Reason[],BannerID)
{
new String[300];
new BannedName[30];
GetPlayerName(BannedID,BannedName,sizeof(BannedName));
new BannedIP[30];
GetPlayerIp(BannedID,BannedIP,sizeof(BannedIP));
new BannerName[30];
GetPlayerName(BannerID,BannerName,sizeof(BannerName));
new Year;
new Month;
new Day;
getdate(Year,Month,Day);
new Hour;
new Minute;
new Second;
gettime(Hour,Minute,Second);
format(String,sizeof(String),"%02d/%02d/%02d %02d:%02d:%02d",Day,Month,Day,Hour,Minute,Second);
if(IsPlayerConnected(BannerID))
{
format(String,sizeof(String),"INSERT INTO Bans VALUES('%s','%s','%s','%d','%s','%s')",BannedName,BannedIP,BannerName,Time + gettime(),Reason,String);
DatabaseResult = db_query(Database,String);
format(String,sizeof(String),"{33ff33}Player{a3a3a3} %s (ID: %d)\n {33ff33}Has been banned by administrator{ff0015} %s (ID: %d)\n{33ff33} for Days{ff002f} %s.\n{ffff00} Reason: %s",BannedName,BannedID,BannerName,BannerID,TB_ConvertTime(Time),Reason);
}
if(!IsPlayerConnected(BannerID))
{
format(String,sizeof(String),"INSERT INTO Bans VALUES('%s','%s','Server','%d','%s','%s')",BannedName,BannedIP,Time + gettime(),Reason,String);
DatabaseResult = db_query(Database,String);
format(String,sizeof(String),"Player %s (ID: %d) has been banned by Server for Days %s. Reason: %s",BannedName,BannedID,TB_ConvertTime(Time),Reason);
}
db_free_result(DatabaseResult);
// SendClientMessageToAll(0xFF0000FF,String);
// SetTimerEx("TB_KickPlayer",1000,0,"i",BannedID);
TP_KickWithMessage(BannedID, 0xFF0000FF, String);
return 1;
}
stock TB_BanPlayerByIP(BannedIP[],Time,Reason[],BannerID)
{
new String[300];
new BannerName[30];
GetPlayerName(BannerID,BannerName,sizeof(BannerName));
new Year;
new Month;
new Day;
getdate(Year,Month,Day);
new Hour;
new Minute;
new Second;
gettime(Hour,Minute,Second);
format(String,sizeof(String),"%02d/%02d/%02d %02d:%02d:%02d",Day,Month,Day,Hour,Minute,Second);
if(IsPlayerConnected(BannerID))
{
format(String,sizeof(String),"INSERT INTO Bans VALUES('Unknown','%s','%s','%d','%s','%s')",BannedIP,BannerName,Time + gettime(),Reason,String);
DatabaseResult = db_query(Database,String);
format(String,sizeof(String),"IP %s has been banned by administrator %s (ID: %d) for Days %s. Reason: %s",BannedIP,BannerName,BannerID,TB_ConvertTime(Time),Reason);
}
if(!IsPlayerConnected(BannerID))
{
format(String,sizeof(String),"INSERT INTO Bans VALUES('Unknown','%s','Server','%d','%s','%s')",BannedIP,Time + gettime(),Reason,String);
DatabaseResult = db_query(Database,String);
format(String,sizeof(String),"IP %s has been banned by Server for Days %s. Reason: %s",BannedIP,TB_ConvertTime(Time),Reason);
}
db_free_result(DatabaseResult);
SendClientMessageToAll(0xFF0000FF,String);
return 1;
}
stock TB_UnbanPlayerByName(BannedName[],UnbannerID)
{
new String[300];
format(String,sizeof(String),"DELETE FROM Bans WHERE Name = '%s'",BannedName);
DatabaseResult = db_query(Database,String);
db_free_result(DatabaseResult);
new UnbannerName[30];
GetPlayerName(UnbannerID,UnbannerName,sizeof(UnbannerName));
format(String,sizeof(String),"Administrator %s (ID: %d) unbanned player %s.",UnbannerName,UnbannerID,BannedName);
SendClientMessageToAll(0x00FF00FF,String);
return 1;
}
stock TB_UnbanPlayerByIP(BannedIP[],UnbannerID)
{
new String[300];
format(String,sizeof(String),"DELETE FROM Bans WHERE IP = '%s'",BannedIP);
DatabaseResult = db_query(Database,String);
db_free_result(DatabaseResult);
new UnbannerName[30];
GetPlayerName(UnbannerID,UnbannerName,sizeof(UnbannerName));
format(String,sizeof(String),"Administrator %s (ID: %d) unbanned IP %s.",UnbannerName,UnbannerID,BannedIP);
SendClientMessageToAll(0x00FF00FF,String);
return 1;
}
stock TB_ConvertTime(Seconds)
{
new String[300];
new Minutes;
if(Seconds > 59)
{
Minutes = Seconds / 60;
Seconds = Seconds - Minutes * 60;
}
new Hours;
if(Minutes > 59)
{
Hours = Minutes / 60;
Minutes = Minutes - Hours * 60;
}
new Days;
if(Hours > 23)
{
Days = Hours / 24;
Hours = Hours - Days * 24;
}
format(String,sizeof(String),"%02d:%02d:%02d:%02d",Days,Hours,Minutes,Seconds);
if(Days == 0) format(String,sizeof(String),"%02d:%02d:%02d",Hours,Minutes,Seconds);
if(Days == 0 && Hours == 0) format(String,sizeof(String),"%02d:%02d",Minutes,Seconds);
if(Days == 0 && Hours == 0 && Minutes == 0) format(String,sizeof(String),"%02d",Seconds);
return String;
}
[/pawn]
-
Salut
Stiu ca voi primi raspunsuri gen : Cumpara-l de la Speedy , cere prea mult
Cine il are ,si vrea sa il vanda , sa imi dea PM
UzzyZVR
Puteti da lock.
Ilam dat eu moca.
-
Pune asta in gamemode-ul tau:
[pawn]stock TP_KickWithMessage(playerid, color, message[])
{
SendClientMessageToAll(color, message);
SendClientMessage(playerid, color, message);
SetTimerEx("TP_KickPublic", 1000, 0, "d", playerid);
}
forward TP_KickPublic(playerid);
public TP_KickPublic(playerid)
{
Kick(playerid);
}[/pawn]
Acum inlocuieste
[pawn]SendClientMessageToAll(0xFF0000FF,String);
SetTimerEx("TB_KickPlayer",1000,0,"i",BannedID);[/pawn]
cu
[pawn]TP_KickWithMessage(BannedID, 0xFF0000FF, String);[/pawn]
Si sterge
[pawn]forward TB_KickPlayer(PlayerID);
public TB_KickPlayer(PlayerID)
{
Kick(PlayerID);
return 1;
}[/pawn]
D:\Games\Stunt\filterscripts\testban.pwn(159) : error 001: expected token: ")", but found "&" D:\Games\Stunt\filterscripts\testban.pwn(159) : error 010: invalid function or declaration D:\Games\Stunt\filterscripts\testban.pwn(205) : error 035: argument type mismatch (argument 3) Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase 3 Errors.
Linia 159stock TP_KickWithMessage(playerid, color, message[])
Linia 205TP_KickWithMessage(BannedID, 0xFF0000FF, String);
-
da... ti-am spus ce sa faci, scoate kickplayer(playerid); de acolo cum ti-am aratat si incearca sa-ti dai ban si spune-mi daca iti apare mesajul... crede-ma stiu ce zic, sunt nou pe forumul asta dar am habar
Scz ca iti spun dar nu sti nmk.
Am scos aia si ce am rezolvat?
Nici ban nui da
Nici text`u nui apare.
-
Inlocuieste asta:
forward TB_KickPlayer(PlayerID); public TB_KickPlayer(PlayerID) { Kick(PlayerID); return 1; }
cu asta:forward TB_KickPlayer(PlayerID); public TB_KickPlayer(PlayerID) { //Kick(PlayerID); return 1; }
(adica renuntam unpic la Kick(playerid) ) fa ce ti-am spus si spune-mi ce se intamplaforward TB_KickPlayer(PlayerID); public TB_KickPlayer(PlayerID) { Kick(PlayerID); return 1; }
Este atunci cand jucatoru care are ban si intra cu numele carei bannat i da kick.
-
Nick:xt3z0ne
Problema:Pai am gasit un fs T/Ban si am zis sal modific dar am o problema cand dau /testban 0 99 Sob. Salut Me.!
Erori / warnings:Nui nevoie.
Lini/script:
Ai incercat sa rezolvi singur ?:
[pawn]
CMD:testban(playerid,params[])
{
if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid,0xFF0000FF,"This command is only for administrators.");
new PlayerID;
new Days;
new Reason[30];
if(sscanf(params,"iis[30]",PlayerID,Days,Reason)) return SendClientMessage(playerid,0xFF0000FF,"Usage /Ban [Player ID] [Days] [Reason].");
if(!IsPlayerConnected(PlayerID)) return SendClientMessage(playerid,0xFF0000FF,"Player with this ID isnt available.");
if(Days <= 0) return SendClientMessage(playerid,0xFF0000FF,"You entered bad time.");
if(strlen(Reason) <= 0 || strlen(Reason) > 30) return SendClientMessage(playerid,0xFF0000FF,"You must give reason, but not too long, maximally 30 characters.");
new String[300];
TB_BanPlayerByID(PlayerID,Days * 24 * 60 * 60,Reason,playerid);
new PlayerName[30];
GetPlayerName(PlayerID,PlayerName,sizeof(PlayerName));
format(String,sizeof(String),"You banned player %s (ID: %d) at time %s. Reason: %s",PlayerName,PlayerID,TB_ConvertTime(Days * 24 * 60 * 60),Reason);
SendClientMessage(playerid,0xFF0000FF,String);
return 1;
}
[/pawn]
[pawn]
stock TB_BanPlayerByID(BannedID,Time,Reason[],BannerID)
{
new String[300];
new BannedName[30];
GetPlayerName(BannedID,BannedName,sizeof(BannedName));
new BannedIP[30];
GetPlayerIp(BannedID,BannedIP,sizeof(BannedIP));
new BannerName[30];
GetPlayerName(BannerID,BannerName,sizeof(BannerName));
new Year;
new Month;
new Day;
getdate(Year,Month,Day);
new Hour;
new Minute;
new Second;
gettime(Hour,Minute,Second);
format(String,sizeof(String),"%02d/%02d/%02d %02d:%02d:%02d",Day,Month,Day,Hour,Minute,Second);
if(IsPlayerConnected(BannerID))
{
format(String,sizeof(String),"INSERT INTO Bans VALUES('%s','%s','%s','%d','%s','%s')",BannedName,BannedIP,BannerName,Time + gettime(),Reason,String);
DatabaseResult = db_query(Database,String);
format(String,sizeof(String),"{33ff33}Player{a3a3a3} %s (ID: %d)\n {33ff33}Has been banned by administrator{ff0015} %s (ID: %d)\n{33ff33} At time{ff002f} %s.\n{ffff00} Reason: %s",BannedName,BannedID,BannerName,BannerID,TB_ConvertTime(Time),Reason);
}
if(!IsPlayerConnected(BannerID))
{
format(String,sizeof(String),"INSERT INTO Bans VALUES('%s','%s','Server','%d','%s','%s')",BannedName,BannedIP,Time + gettime(),Reason,String);
DatabaseResult = db_query(Database,String);
format(String,sizeof(String),"Player %s (ID: %d) has been banned by Server at time %s. Reason: %s",BannedName,BannedID,TB_ConvertTime(Time),Reason);
}
db_free_result(DatabaseResult);
SendClientMessageToAll(0xFF0000FF,String);
SetTimerEx("TB_KickPlayer",1000,0,"i",BannedID);
return 1;
}
[/pawn]
Nu imi arata cum trebe.
{33ff33}Player{a3a3a3} %s (ID: %d)\n {33ff33}Has been banned by administrator{ff0015} %s (ID: %d)\n{33ff33} At time{ff002f} %s.\n{ffff00} Reason: %s
Imi arata asa.
Iar accel jucator de unde sa stie dela cine a luat ban :-w
Asta este tot scriptu
[pawn]
#include <a_samp>
#include <sscanf2>
#define FILTERSCRIPT
#include <zcmd>
new DB:Database;
new DBResult:DatabaseResult;
public OnFilterScriptInit()
{
Database = db_open("Bans.db");
DatabaseResult = db_query(Database,"CREATE TABLE IF NOT EXISTS Bans (Name CHAR(30),IP CHAR(30),BannerName CHAR(30),Time INT(10),Reason CHAR(30),Date CHAR(30))");
db_free_result(DatabaseResult);
return 1;
}
public OnFilterScriptExit()
{
db_close(Database);
return 1;
}
public OnPlayerConnect(playerid)
{
new String[300];
new PlayerName[30];
GetPlayerName(playerid,PlayerName,sizeof(PlayerName));
new PlayerIP[30];
GetPlayerIp(playerid,PlayerIP,sizeof(PlayerIP));
format(String,sizeof(String),"SELECT * FROM Bans WHERE Name = '%s' OR IP = '%s'",PlayerName,PlayerIP);
DatabaseResult = db_query(Database,String);
if(db_num_rows(DatabaseResult))
{
db_get_field_assoc(DatabaseResult,"Time",String,10);
if(strval(String) > gettime())
{
SendClientMessage(playerid,0x999999FF,"You are banned from this server.");
db_get_field_assoc(DatabaseResult,"Name",String,30);
format(String,sizeof(String),"Name: %s",String);
SendClientMessage(playerid,0xFF0000FF,String);
db_get_field_assoc(DatabaseResult,"IP",String,30);
format(String,sizeof(String),"IP: %s",String);
SendClientMessage(playerid,0xFF0000FF,String);
db_get_field_assoc(DatabaseResult,"BannerName",String,30);
format(String,sizeof(String),"Banner: %s",String);
SendClientMessage(playerid,0xFF0000FF,String);
db_get_field_assoc(DatabaseResult,"Time",String,10);
format(String,sizeof(String),"Time: %s",TB_ConvertTime(strval(String) - gettime()));
SendClientMessage(playerid,0xFF0000FF,String);
db_get_field_assoc(DatabaseResult,"Reason",String,30);
format(String,sizeof(String),"Reason: %s",String);
SendClientMessage(playerid,0xFF0000FF,String);
db_get_field_assoc(DatabaseResult,"Date",String,30);
format(String,sizeof(String),"Date: %s",String);
SendClientMessage(playerid,0xFF0000FF,String);
db_free_result(DatabaseResult);
SendClientMessage(playerid,0x999999FF,"If you want be unbanned before time write request at website www.ecila.ro");
SetTimerEx("TB_KickPlayer",1000,0,"i",playerid);
return 1;
}
if(strval(String) < gettime())
{
db_free_result(DatabaseResult);
format(String,sizeof(String),"DELETE FROM Bans WHERE Name = '%s' OR IP = '%s'",PlayerName,PlayerIP);
DatabaseResult = db_query(Database,String);
}
}
db_free_result(DatabaseResult);
return 1;
}
CMD:testban(playerid,params[])
{
if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid,0xFF0000FF,"This command is only for administrators.");
new PlayerID;
new Days;
new Reason[30];
if(sscanf(params,"iis[30]",PlayerID,Days,Reason)) return SendClientMessage(playerid,0xFF0000FF,"Usage /Ban [Player ID] [Days] [Reason].");
if(!IsPlayerConnected(PlayerID)) return SendClientMessage(playerid,0xFF0000FF,"Player with this ID isnt available.");
if(Days <= 0) return SendClientMessage(playerid,0xFF0000FF,"You entered bad time.");
if(strlen(Reason) <= 0 || strlen(Reason) > 30) return SendClientMessage(playerid,0xFF0000FF,"You must give reason, but not too long, maximally 30 characters.");
new String[300];
TB_BanPlayerByID(PlayerID,Days * 24 * 60 * 60,Reason,playerid);
new PlayerName[30];
GetPlayerName(PlayerID,PlayerName,sizeof(PlayerName));
format(String,sizeof(String),"You banned player %s (ID: %d) at time %s. Reason: %s",PlayerName,PlayerID,TB_ConvertTime(Days * 24 * 60 * 60),Reason);
SendClientMessage(playerid,0xFF0000FF,String);
return 1;
}
COMMAND:banip(playerid,params[])
{
if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid,0xFF0000FF,"This command is only for administrators.");
new PlayerIP[30];
new Days;
new Reason[30];
if(sscanf(params,"s[30]is[30]",PlayerIP,Days,Reason)) return SendClientMessage(playerid,0xFF0000FF,"Usage /Banip [iP] [Days] [Reason].");
if(strlen(PlayerIP) <= 0 || strlen(PlayerIP) > 30) return SendClientMessage(playerid,0xFF0000FF,"You entered bad IP.");
if(Days <= 0) return SendClientMessage(playerid,0xFF0000FF,"You entered bad time.");
if(strlen(Reason) <= 0 || strlen(Reason) > 30) return SendClientMessage(playerid,0xFF0000FF,"You must give reason, but not too long, maximally 30 characters.");
new String[300];
TB_BanPlayerByIP(PlayerIP,Days * 24 * 60 * 60,Reason,playerid);
format(String,sizeof(String),"You banned IP %s at time %s. Reason: %s",PlayerIP,TB_ConvertTime(Days * 24 * 60 * 60),Reason);
SendClientMessage(playerid,0xFF0000FF,String);
return 1;
}
COMMAND:unban(playerid,params[])
{
if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid,0xFF0000FF,"This command is only for administrators.");
if(isnull(params)) return SendClientMessage(playerid,0xFF0000FF,"Usage /Unban [Player Name].");
new String[300];
format(String,sizeof(String),"SELECT * FROM Bans WHERE Name = '%s'",params);
DatabaseResult = db_query(Database,String);
if(db_num_rows(DatabaseResult))
{
TB_UnbanPlayerByName(params,playerid);
format(String,sizeof(String),"You unbanned player %s.",params);
SendClientMessage(playerid,0x00FF00FF,String);
}
if(!db_num_rows(DatabaseResult))
{
SendClientMessage(playerid,0xFF0000FF,"This player isnt banned.");
db_free_result(DatabaseResult);
return 1;
}
return 1;
}
COMMAND:unbanip(playerid,params[])
{
if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid,0xFF0000FF,"This command is only for administrators.");
if(isnull(params)) return SendClientMessage(playerid,0xFF0000FF,"Usage /Unbanip [iP].");
new String[300];
format(String,sizeof(String),"SELECT * FROM Bans WHERE IP = '%s'",params);
DatabaseResult = db_query(Database,String);
if(db_num_rows(DatabaseResult))
{
TB_UnbanPlayerByIP(params,playerid);
format(String,sizeof(String),"You unbanned IP %s.",params);
SendClientMessage(playerid,0x00FF00FF,String);
}
if(!db_num_rows(DatabaseResult))
{
SendClientMessage(playerid,0xFF0000FF,"This IP isnt banned.");
db_free_result(DatabaseResult);
return 1;
}
return 1;
}
forward TB_KickPlayer(PlayerID);
public TB_KickPlayer(PlayerID)
{
Kick(PlayerID);
return 1;
}
stock TB_BanPlayerByID(BannedID,Time,Reason[],BannerID)
{
new String[300];
new BannedName[30];
GetPlayerName(BannedID,BannedName,sizeof(BannedName));
new BannedIP[30];
GetPlayerIp(BannedID,BannedIP,sizeof(BannedIP));
new BannerName[30];
GetPlayerName(BannerID,BannerName,sizeof(BannerName));
new Year;
new Month;
new Day;
getdate(Year,Month,Day);
new Hour;
new Minute;
new Second;
gettime(Hour,Minute,Second);
format(String,sizeof(String),"%02d/%02d/%02d %02d:%02d:%02d",Day,Month,Day,Hour,Minute,Second);
if(IsPlayerConnected(BannerID))
{
format(String,sizeof(String),"INSERT INTO Bans VALUES('%s','%s','%s','%d','%s','%s')",BannedName,BannedIP,BannerName,Time + gettime(),Reason,String);
DatabaseResult = db_query(Database,String);
format(String,sizeof(String),"{33ff33}Player{a3a3a3} %s (ID: %d)\n {33ff33}Has been banned by administrator{ff0015} %s (ID: %d)\n{33ff33} At time{ff002f} %s.\n{ffff00} Reason: %s",BannedName,BannedID,BannerName,BannerID,TB_ConvertTime(Time),Reason);
}
if(!IsPlayerConnected(BannerID))
{
format(String,sizeof(String),"INSERT INTO Bans VALUES('%s','%s','Server','%d','%s','%s')",BannedName,BannedIP,Time + gettime(),Reason,String);
DatabaseResult = db_query(Database,String);
format(String,sizeof(String),"Player %s (ID: %d) has been banned by Server at time %s. Reason: %s",BannedName,BannedID,TB_ConvertTime(Time),Reason);
}
db_free_result(DatabaseResult);
SendClientMessageToAll(0xFF0000FF,String);
SetTimerEx("TB_KickPlayer",1000,0,"i",BannedID);
return 1;
}
stock TB_BanPlayerByIP(BannedIP[],Time,Reason[],BannerID)
{
new String[300];
new BannerName[30];
GetPlayerName(BannerID,BannerName,sizeof(BannerName));
new Year;
new Month;
new Day;
getdate(Year,Month,Day);
new Hour;
new Minute;
new Second;
gettime(Hour,Minute,Second);
format(String,sizeof(String),"%02d/%02d/%02d %02d:%02d:%02d",Day,Month,Day,Hour,Minute,Second);
if(IsPlayerConnected(BannerID))
{
format(String,sizeof(String),"INSERT INTO Bans VALUES('Unknown','%s','%s','%d','%s','%s')",BannedIP,BannerName,Time + gettime(),Reason,String);
DatabaseResult = db_query(Database,String);
format(String,sizeof(String),"IP %s has been banned by administrator %s (ID: %d) at time %s. Reason: %s",BannedIP,BannerName,BannerID,TB_ConvertTime(Time),Reason);
}
if(!IsPlayerConnected(BannerID))
{
format(String,sizeof(String),"INSERT INTO Bans VALUES('Unknown','%s','Server','%d','%s','%s')",BannedIP,Time + gettime(),Reason,String);
DatabaseResult = db_query(Database,String);
format(String,sizeof(String),"IP %s has been banned by Server at time %s. Reason: %s",BannedIP,TB_ConvertTime(Time),Reason);
}
db_free_result(DatabaseResult);
SendClientMessageToAll(0xFF0000FF,String);
return 1;
}
stock TB_UnbanPlayerByName(BannedName[],UnbannerID)
{
new String[300];
format(String,sizeof(String),"DELETE FROM Bans WHERE Name = '%s'",BannedName);
DatabaseResult = db_query(Database,String);
db_free_result(DatabaseResult);
new UnbannerName[30];
GetPlayerName(UnbannerID,UnbannerName,sizeof(UnbannerName));
format(String,sizeof(String),"Administrator %s (ID: %d) unbanned player %s.",UnbannerName,UnbannerID,BannedName);
SendClientMessageToAll(0x00FF00FF,String);
return 1;
}
stock TB_UnbanPlayerByIP(BannedIP[],UnbannerID)
{
new String[300];
format(String,sizeof(String),"DELETE FROM Bans WHERE IP = '%s'",BannedIP);
DatabaseResult = db_query(Database,String);
db_free_result(DatabaseResult);
new UnbannerName[30];
GetPlayerName(UnbannerID,UnbannerName,sizeof(UnbannerName));
format(String,sizeof(String),"Administrator %s (ID: %d) unbanned IP %s.",UnbannerName,UnbannerID,BannedIP);
SendClientMessageToAll(0x00FF00FF,String);
return 1;
}
stock TB_ConvertTime(Seconds)
{
new String[300];
new Minutes;
if(Seconds > 59)
{
Minutes = Seconds / 60;
Seconds = Seconds - Minutes * 60;
}
new Hours;
if(Minutes > 59)
{
Hours = Minutes / 60;
Minutes = Minutes - Hours * 60;
}
new Days;
if(Hours > 23)
{
Days = Hours / 24;
Hours = Hours - Days * 24;
}
format(String,sizeof(String),"%02d:%02d:%02d:%02d",Days,Hours,Minutes,Seconds);
if(Days == 0) format(String,sizeof(String),"%02d:%02d:%02d",Hours,Minutes,Seconds);
if(Days == 0 && Hours == 0) format(String,sizeof(String),"%02d:%02d",Minutes,Seconds);
if(Days == 0 && Hours == 0 && Minutes == 0) format(String,sizeof(String),"%02d",Seconds);
return String;
}
[/pawn]
Cam asa arata.
http://www.imgz.ro/i/1398172086-sa-mp-164.png
http://www.imgz.ro/i/1398172086-sa-mp-163.png
Va rog sa ma ajutati.
Am facut si un test cun jucator i arat asa.
Nici nu sti dela cine a luat ban pece motiv..
:-??
Va rog sa ma ajutati
-
Deci am o problema cu sv am urcat sv pe host dau restart si spune cai off.
Am urcat tot`u corect.
Sv ruleaza pe mysql r34 si merge bine.
Este RRS dela gamer.
Pace.
-
if(strcmp(hInfo[hID][Name], PlayerName2(playerid), false) == 0 && !IsPlayerAdmin(playerid) ) return SendClientMessage(playerid, red, "You already have a house!");
Voi incerca sa fac cum mia-ti dat sa vedem daca merge.
Revin cu edit:
-
Multumesc pentru ce mi-ai spus dar eu vreau pe comanda.
-
Salut cum pot sa fac si eu comanda /createhouses
stock AH(hi,Float:iconX,Float:iconY,Float:iconZ,Float:interiorX,Float:interiorY,Float:interiorZ,Costa,Sella,Interiora) { //-------------------------------------------------------------------------- new house[128], string[612]; format(house, sizeof(house), "Houses/hi%d",hi); //-------------------------------------------------------------------------- if(!dini_Exists(house)) { dini_Create(house); format(hInfo[hi][Name], 24, "ForSale"); dini_Set(house, "Name", "ForSale"); format(hInfo[hi][Renter], 24, "ForRent"); dini_Set(house, "Renter", "ForRent"); hInfo[hi][Rentable] = 0; dini_IntSet(house, "Rentable", 0); hInfo[hi][Rentcost] = 0; dini_IntSet(house, "Rentcost", 0); hInfo[hi][Cost] = Costa; dini_IntSet(house, "Cost", Costa+00000); hInfo[hi][Sell] = Sella; dini_IntSet(house, "Sell", Sella); hInfo[hi][Interior] = Interiora; dini_IntSet(house, "Interior", Interiora); hInfo[hi][Virtualworld] = hi; dini_IntSet(house, "Locked", 1); hInfo[hi][InteriorX] = interiorX; hInfo[hi][InteriorY] = interiorY; hInfo[hi][InteriorZ] = interiorZ; dini_FloatSet(house, "X", interiorX); dini_FloatSet(house, "Y", interiorY); dini_FloatSet(house, "Z", interiorZ); dini_IntSet(house, "RentPay", 0); dini_IntSet(house, "RentGet", 0); hInfo[hi][Locked] = 1; print("-"); print("-------------(House Created)-------------"); printf("-> hi: %d", hi); printf("-> Buy Cost: %d", Costa+0000); printf("-> Sell Cost: %d", Sella); printf("-> Interior: %d", Interiora); printf("-> VirtualWorld: %d", hi); print("-----------------------------------------"); print("-"); } else { format(hInfo[hi][Name], 24, dini_Get(house, "Name")); format(hInfo[hi][Renter], 24, dini_Get(house, "Renter")); hInfo[hi][Rentable] = dini_Int(house, "Rentable"); hInfo[hi][Rentcost] = dini_Int(house, "Rentcost"); hInfo[hi][Cost] = dini_Int(house, "Cost"); hInfo[hi][Sell] = dini_Int(house, "Sell"); hInfo[hi][Interior] = dini_Int(house, "Interior"); hInfo[hi][Locked] = dini_Int(house, "Locked"); hInfo[hi][InteriorX] = dini_Float(house, "X"); hInfo[hi][InteriorY] = dini_Float(house, "Y"); hInfo[hi][InteriorZ] = dini_Float(house, "Z"); hInfo[hi][Virtualworld] = dini_Int(house, "Virtualworld"); } //-------------------------------------------------------------------------- hInfo[hi][iconx] = iconX; hInfo[hi][icony] = iconY; hInfo[hi][iconz] = iconZ; format(house, sizeof(house), "Houses/hi%d",hi); //-------------------------------------------------------------------------- if(strcmp(hInfo[hi][Name],"ForSale",true) == 0) { HousePickup[hi] = CreatePickup(1273, 23, iconX, iconY, iconZ); } else { HousePickup[hi] = CreatePickup(1272, 23, iconX, iconY, iconZ); } format(string, sizeof(string), "{00FF00}House\n{00FF00}Owned by: {FF0000}%s\n{00FF00}Cost: {FF0000}%i Coins\n{00FF00}Type {FF9900}/house {00FF00}for more info.", hInfo[hi][Name], hInfo[hi][Cost]); housei[hi] = Create3DTextLabel(string, red, iconX, iconY, iconZ, 15.0, 0, 0); } //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ stock GetHouseID(playerid) { for(new i = 0; i < MAX_HOUSES; i++) { if(PlayerToPoint(MAX_DISTANCE_TO_PROP, playerid, hInfo[i][iconx], hInfo[i][icony], hInfo[i][iconz])) { return i; } } return -255; }
Are cineva idee.
-
Killer" post="158783" timestamp="1394124323"]
Incearca sa pui "true" in loc de false
la fel...
-
Deci am facut comanda /sell
Iar cand dau /sell la o casa si vreau sa cumpar alta spune ca " You already have a house "
Cum pot sa rezolv problema..
CMD:sell(playerid,params[]) { new str1[80], hID = GetHouseID(playerid); //-------------------------------------------------------------------------- format(str1, 80, "Houses/hi%d", hID); //-------------------------------------------------------------------------- if(strcmp(hInfo[hID][Name], PlayerName2(playerid), false) && !IsPlayerAdmin(playerid) ) return SendClientMessage(playerid, red, "You already have a house!"); //-------------------------------------------------------------------------- SendClientMessage(playerid, yellow, "You left the house!"); //-------------------------------------------------------------------------- AccInfo[playerid][Coins] += hInfo[hID][Sell]; dini_Set(str1, "Name", "ForSale"); hInfo[hID][Locked] = dini_IntSet(str1,"Locked",1); format(hInfo[hID][Name], 255 ,"ForSale"); //-------------------------------------------------------------------------- format(str1, 80, "Houses/Users/%s.house", PlayerName2(playerid)); if(!dini_Exists(str1)) { dini_Remove(str1); } dini_IntSet(str1, "hi", -255); DestroyPickup(HousePickup[hID]); houseup(hID, hInfo[hID][iconx], hInfo[hID][icony], hInfo[hID][iconz]); HousePickup[hID] = CreatePickup(1273, 23, hInfo[hID][iconx], hInfo[hID][icony], hInfo[hID][iconz]); return 1; }
Help
-
Salut cum pot sa fac o comanda de admin pentru sistemu asta de adminare?.
de genu /setlevel sau /makeadmin.
-
Nume:sKr.Th
Problem? întâlnit?:Vreau sa incorporez luxadmin in gm si nu ma pricep si am ales sa apelez aici.!
Il vreau in gm de oare ce vreau sa fac ro/eng si in filescript nu mere ro/eng am incercat
Ce am încercat pân? acum:Sa incorporez luxadminu in gm dar nam reusit
Codul sursa/Log/Altele:
http://www.girlshare.ro/33151170.8
LuxAdmin - Cel editat de Gamer
SKR - GameMode Cel editat ro/eng
Iar NZC - Este cel pe care am pus luxadmin dar nam reusit :(
Cerere Ajutor T/Ban!
in Arhivă probleme
Posted
Ok ms.
Dar tot nu mi-ai spus cum sa fac asta.
Asta sai arate celui banat.
Player ala ( ID:1 ) Ai primit interdictie dela Administratoru Banned ( ID:0 )
Pentru:99 de zile
Motivul: Reclama!
Daca crezi ca ai primit ban fara sa faci prosti te rugam sa faci o poza apasand pe butonu F8 dupa aplica o cerere un-ban pe forum www.sa-mp.ro
Si asta la restu jucatorilor Dupa ce i-am dat ban lui
========= [ Ban Info ===========
Jucatoru ala Aprimit ban dela Administratoru Banned
Pentru: 99 de zile.
Motiv: Reclama!
============================
Ma poti ajuta?