Zaključano

Korisne skripte i kodovi

Započeo Obrisan korisnik
pre 15 godina
87,703
pregleda
366
postova
Ova tema je zaključana. Samo moderatori i administratori mogu odgovarati.
adnan halilovic
Enforcer
pre 11 godina
Po Å¡to su ovo korisne/skripte kodovi,npr : možeteli neÅ¡to napraviti npr.Materijal kako treba to uraditi u modu i povezati samo sa bandom? nezz smijeli se tražiti zahtjevi ovde,ali po Å¡to vidim ne piÅ¡e nigjde ako sam pogrjeÅ¡io delete odma post 😄
Blaeks_Biofor
Forum Don
pre 11 godina
RoleX 🙂 wrote on February 28, 2014, 12:06 am:
Po Å¡to su ovo korisne/skripte kodovi,npr : možeteli neÅ¡to napraviti npr.Materijal kako treba to uraditi u modu i povezati samo sa bandom? nezz smijeli se tražiti zahtjevi ovde,ali po Å¡to vidim ne piÅ¡e nigjde ako sam pogrjeÅ¡io delete odma post 😄
nisi shvatio razlog otvaranja teme ? ovo nisu tutoriali
adnan halilovic
Enforcer
pre 11 godina
Blaeks wrote on February 28, 2014, 12:06 am:
Po Å¡to su ovo korisne/skripte kodovi,npr : možeteli neÅ¡to napraviti npr.Materijal kako treba to uraditi u modu i povezati samo sa bandom? nezz smijeli se tražiti zahtjevi ovde,ali po Å¡to vidim ne piÅ¡e nigjde ako sam pogrjeÅ¡io delete odma post 😄
nisi shvatio razlog otvaranja teme ? ovo nisu tutoriali

Dobro po Å¡to baÅ¡ i nisam skontao ali nema veze,pobriÅ¡i nam postove ako hočeÅ¡ 😄
[CH]pliva
Made Man
pre 11 godina
Evo korisne stvari.Nije skripta,ali je Online Tidy Pawn.Odnosno uređuje vaš kod.Ukoliko imate primjera radi:
public OnPlayerCommandText(playerid, cmdtext[])
{
if(!strcmp(cmdtext, "/help", true)){
SendClientMessage(playerid, 0xFFFFFFFF, "SERVER: This is the /help command!");
return 1;
}
return 0;
}


Vaš kod nakon uređivanja ce izgledati ovako:

public OnPlayerCommandText(playerid, cmdtext[])
{
    if(!strcmp(cmdtext, "/help", true))
    {
        SendClientMessage(playerid, 0xFFFFFFFF, "SERVER: This is the /help command!");
        return 1;
    }
    return 0;
}


Link: http://pliva.bu-rp.info/pawn/

Online editor nisam ja napravio,ali odlucio sam ga postaviti na web jer vidim da imaju mnogi problema s tim.
Roberto_Escobar
Rookie
pre 11 godina
Pozdrav, pomocu ove komande mozete izbrisati vozilo koje ste uzeli na /veh.To ostane na serveru i onda uzmu igraci i bude dosta problema 😄 Zato sam odlucio postavit ovaj kod 🙂
CMD:bveh(playerid, params[], help)
{

    new vehicle = GetPlayerVehicleID(playerid);
if(PlayerInfo < 1) return SCM(playerid, COLOR_GREY,"{FF6600}* {FFFFFF}Ne mozes ti to!"), PlayerPlaySound(playerid, 1085, 0, 0 , 0);
    if(!IsACreatedCar(vehicle)) return SendClientMessage(playerid, COLOR_GREY,"{FF6600}* {FFFFFF}Mozes da obrises samo stvorena vozila");
if(IsPlayerInAnyVehicle(playerid))
{
        new sendername;
    GetPlayerName(playerid, sendername, sizeof(sendername));
    new string;
    format(string, 256, "{FFFFFF}[{FF6600}WARN{FFFFFF}]: %s {FFFFFF}je unistio vozilo: {FF6600}%d.",sendername,GetPlayerVehicleID(playerid));
SendAdminMessage(-1, string);
    DestroyVehicle(GetPlayerVehicleID(playerid));
RemovePlayerFromVehicle(playerid);
    SendClientMessage(playerid, COLOR_GREY, "{FF6600}* {FFFFFF}Vozilo unisteno!");
}
return 1;
}
Ivan.
Shot Caller
pre 11 godina
Korisno ukoliko pravite srw da se netko ne može koristit određene nickove sa drugih srwa od admina,da njima ne može naštetiti da izgube pozicije.

public OnPlayerConnect(playerid)
{
  new ime;
  GetPlayerName(playerid, ime, sizeof(ime));
  if(strcmp(ime, "Ime_Prezime", false)
  SendClientMessage(playerid, -1, "INFO: Razlog.:");
  Ban(playerid);
  return 1;
}
Rudimental
OG Legend
pre 11 godina
BUMP
Lenonâ„¢
Godfather
pre 11 godina
Posto je ProxDetector zastario (inace sluzio je za slanje poruke u odredjenom rangeu), evo vam nesto savremenije 😄

stock SendMessageToRange(color, message[], Float:range, Float:X, Float:Y, Float:Z)
{
foreach(Player, i)
{
if(IsPlayerInRangeOfPoint(i, range, X, Y, Z))
SendClientMessage(i, color, message);
}
return true;
}


Potrevan vam je include "foreach", njega mozete skinuti ovdje: KLIKNI ME.

Primjer koristenja:

public OnPlayerText(playerid, text[])
{
    new ime, string, Float:X, Float:Y, Float:Z;
    GetPlayerName(playerid, ime, sizeof(ime));
    GetPlayerPos(playerid, X, Y, Z);
    format(string, sizeof(string), "%s: %s", ime, text);
    SendMessageToRange(-1, string, 20.0, X, Y, Z);
    return 0;
}


CREDITS: forum.sa-mp.com
dock
Crime Lord
pre 10 godina
Imao sam potrebu da napravim ovo za jedan sistem, deluje kao fina f-ja koju samp team nije ubacio a trebalo je..
#define OUTPUT_SIZE    128
stock strreplace(string[],strsize,what[],withwhat[]) {
new pos = strfind(string,what,true);
new whatsize = strlen(what);
new withwhatsize = strlen(withwhat);
new currentsize = strlen(string);
if(pos != -1) {
    if(currentsize - whatsize + withwhatsize <= strsize) {
        strdel(string, pos, pos + whatsize);
        strins(string, withwhat, pos, strsize);
    }
}
new output; format(output,OUTPUT_SIZE,"%s",string);
return output;
}


Primer koriscenja:

print(strreplace(string,sizeof(string),"jebem","*****"));


u sustini meni je trebalo zbog dinamicnog sistema bandi za DM server gde ima tagova za nickove.. neke bande imaju tag u formatu IME pa da bih mogao da napravim takve tagove dinamicno koristio sam ovo..

Hope it helps somebody

*OUTPUT_SIZE sam stavio na 128 radi testiranja, ukoliko vam nije potreban toliko veliki output size ili vam je premali vi promenite.
arnel avdic
Underboss
pre 10 godina
Evo ovako da napišem jednu skripticu pomoću koje možete ,u ovom mom slučaju prijavljivati bugove IG te se to sacuva u fajl jedan .

Prvo idemo includovati sve potrebno
#include 
#include
#include

Zatim definišemo fajl u koji ćemo spremati bugove u ovom slucaju to je scriptfiles ---> Bug Log.txt
#define FAJL_BUG_LOG            "Bug Log.txt"


Zatim pravimo komandu jednu sa kojom prijavljujemo bugove !
CMD:prijavibug(playerid,params[])
{
new result;
if(sscanf(params, "s", result)) return SendClientMessage(playerid,-1,"[ Koristi ] /prijavibug ");
SendClientMessage(playerid,-1," Uspješno ste prijavili bug !");
  new unos;
format(unos, 200, "|| PRIJAVA BUGA || Igrac :%s || Bug: %s", GetName(playerid),result);
UpisiLog(FAJL_BUG_LOG, unos);
return 1;
}


Ovaj stock je najbitniji u cijeloj skripti jer sa njim cemo upisati bug u datoteku !
stock UpisiLog(fajl[], string[])
{
new unos;
new sat, minut, sekund, dan, mesec, godina;
gettime(sat, minut, sekund);
getdate(godina, mesec, dan);
format(unos, 256, "[%d/%d/%d - %d:%d:%d] %s\r\n", dan, mesec, godina, sat, minut, sekund, string);
new File:hFile;
hFile = fopen(fajl, io_append);
fwrite(hFile, unos);
fclose(hFile);
}
stock GetName(playerid)
{
new JName;
GetPlayerName(playerid,JName,MAX_PLAYER_NAME);
return JName;
}
[WW]ivan
Kingpin
pre 10 godina
stock GetPlayerID(const ime[])
{
    for(new i; i    {
        new ime2;
        GetPlayerName(i, ime2, sizeof(ime2));
        if(strcmp(ime, ime2, true)==0)
        {
          return i;
        }
    }
    return -1;
}


s foreachom
stock GetPlayerID(const ime[])
{
    foreach(Player, i)
{
        new ime2;
        GetPlayerName(i, ime2, sizeof(ime2));
        if(strcmp(ime, ime2, true)==0)
        {
          return i;
        }
    }
    return -1;
}


pomocu ovog koda mozete otkrit id igraca preko njegovog imena, ja sam sebi ovo jos davno napravio, za prodaju imovine, evo kako se moze iskoristiti:

new idigraca = GetPlayerID(KucaInfo);//ovaj i oznacava id kuce
if(IsPlayerConnected(idigraca))
{
SCM(idigraca, -1, "Admin je prodo vasu kucu");
PlayerInfo = -1;
}


ovo se odnosi kad igracu prodajete imovinu a on je na serveru, i onda cemo izbacit ovu poruku
Lenonâ„¢
Godfather
pre 10 godina
Crazyn3ss wrote on April 21, 2015, 1:23 pm:
stock GetPlayerID(const ime[])
{
    for(new i; i    {
        new ime2;
        GetPlayerName(i, ime2, sizeof(ime2));
        if(strcmp(ime, ime2, true)==0)
        {
          return i;
        }
    }
    return -1;
}


pomocu ovog koda mozete otkrit id igraca preko njegovog imena, ja sam sebi ovo jos davno napravio, za prodaju imovine, evo kako se moze iskoristiti:
new IME;
new idigraca = GetPlayerID(KucaInfo);//ovaj i oznacava id kuce
if(IsPlayerConnected(idigraca))
{
SCM(idigraca, -1, "Admin je prodo vasu kucu");
PlayerInfo = -1;
}


Zasto for petlja? Ovdje ti je bolje foreach staviti, da ti petlja prolazi kroz sve online igrace, a sa MAX_PLAYERS ti prolazi kroz sve slotove (zavisi koliko si ih definisao).
[WW]ivan
Kingpin
pre 10 godina
znam ja to sve, kod mene je foreach, al da sam njega stavio bio bi komenatar zasto foreach kad ga ne koriste svi, al dodat cu sad i tako
Sonwebrt
Rookie
pre 10 godina
Dali mozete mi dati skriptu kad admin pise na /b da je sa zuta boja a gm kad pise sa plava boja
Vuzimir
Kingpin
pre 10 godina
Sonwebrt wrote on July 13, 2015, 9:40 pm:
Dali mozete mi dati skriptu kad admin pise na /b da je sa zuta boja a gm kad pise sa plava boja

CMD:b(playerid, params[])
{
if (isnull(params)) return SendClientMessage(playerid, -1, "{C0C0C0}USAGE: /b < message >");

new Float:X, Float:Y, Float:Z, String, Name;

GetPlayerPos(playerid, X, Y, Z);
GetPlayerName(playerid, Name, 25);
if(PlayerInfo > 0)
        {
format(String, 128, "(( [%d] %s: {FFFF00}%s{FFFFFF} ))", playerid, Name, params);
        }
        else if(PlayerInfo > 0)
        {
format(String, 128, "(( [%d] %s: {0080FF}%s{FFFFFF} ))", playerid, Name, params);
        }
        else
        {
        format(String, 128, "(( [%d] %s: %s ))", playerid, Name, params);
        }

for(new i = 0; i < MAX_PLAYERS; i++)
{
    if (IsPlayerInRangeOfPoint(i, X, Y, Z))
    {
        SendClientMessage(playerid, 0xC0C0C0FF, String);
}
}

return true;
}

Morate biti prijavljeni da biste odgovorili na ovu temu.

Prijava