Jump to content
  • 0

pomoc Udělení Oprávnění


-GSG-Nuke

Dotaz

Sorry že vám zase píšu nato samé ale potřebuji poradit včera sem se dozvěděl že se to oprávnění dělá takto

 

#include

 

#define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1

 

#pragma tabsize 0

 

new opravneni[MAX_PLAYERS];

 

#define B_ORAN 0xFF8C00AA

 

stock PlayerName(playerid)

{

new name[24];

GetPlayerName(playerid, name, 24);

return name;

}

 

public OnFilterScriptInit()

{

print("\n--------------------------------------");

print(" Blank Filterscript by your name here");

print("--------------------------------------\n");

return 1;

}

 

public OnFilterScriptExit()

{

return 1;

}

 

 

public OnPlayerCommandText(playerid, cmdtext[])

{

dcmd(prav, 4,cmdtext);

dcmd(unprav, 6,cmdtext);

return 0;

}

 

dcmd_prav(playerid,params[])

{

new id = strval(params);

new string[80];

if (!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, B_ORAN,"[ ! ] Musíte být přihlášený přez rcon!");

if(!strlen(params)) return SendClientMessage(playerid,B_ORAN,"[ ! ] Použití: /prav [iD]");

if (opravneni[playerid] == 1) return SendClientMessage(playerid, B_ORAN,"[ ! ] Toto [iD] už má oprávnění!");

if (!IsPlayerConnected(id)) return SendClientMessage(playerid, B_ORAN,"[ ! ] Toto [iD] není na serveru!");

else

if (IsPlayerConnected(id))

{

opravneni[playerid] = 1;

format (string,sizeof(string),"[ ! ] Administrátor %s dal oprávnění hráči %s.",PlayerName(playerid),PlayerName(id));

SendClientMessageToAll(B_ORAN, string);

}

return 1;

}

 

dcmd_unprav(playerid,params[])

{

new id = strval(params);

new string[80];

if (!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, B_ORAN,"[ ! ] Musíte být přihlášený přez rcon!");

if(!strlen(params)) return SendClientMessage(playerid,B_ORAN,"[ ! ] Použití: /unprav [iD]");

if (opravneni[playerid] != 1) return SendClientMessage(playerid, B_ORAN,"[ ! ] Toto [iD] nemá oprávnění!");

if (!IsPlayerConnected(id)) return SendClientMessage(playerid, B_ORAN,"[ ! ] Toto [iD] není na serveru!");

else

if (IsPlayerConnected(id))

{

opravneni[playerid] = 0;

format (string,sizeof(string),"[ ! ] Administrátor %s sebral oprávnění hráči %s.",PlayerName(playerid),PlayerName(id));

SendClientMessageToAll(B_ORAN, string);

}

return 1;

}

 

Toto sem pochopil, ale co jsem nepochopil jak to mám udělat aby se to ukládalo a při

příchodu na server zase načetlo PLS "help"

 

dozvěděl sem se jen to že mám udělat toto

 

Do OnPlayerDisconnect

 

dUserSetINT(PlayerName(playerid)).("Opravneni",opravneni[playerid]);//při odhodu se mu to uloží

 

a pak pro načtení sem se dozvěděl toto

 

opravneni[playerid]=dUserINT(PlayerName(playerid)).("Opravneni");// Kdyz se pripoji nacte mu to opravneni

 

a kde je chyba?

to 1 dám do OnPlayerDisconnect

a to 2 nevím kam dát když to nechci dávat do modu do registrace ale chci si stoho udělat običejní FS PLS napište mi někdo co mám zadefinovat nebo jak to mám upravit.

Vůbec nevím kam to mám připsat pořád mi to háže erory a warningy prosím někoh kdo mi poradí kam co mám napsat aby my to fungovalo na 100% a neházelo chyby díky "help"

Link to comment
Share on other sites

13 odpovědí na tuto otázku

Recommended Posts

  • 0

Nojo ale já nevím co tam mám dát a nevím kam sorry ale sem začátečník a pavno se učím cca 1 měsíc a pomalu PLS napiš mi to stručněji PLS moc "help"

 

-- čtv 14. říj 2010 20:34:41 --

 

PLS mohl by mi někdo napsat přesný návod jak nato PLS moc odněkad se to musím naučit a každý přece začíná nebo ne? PLS napište mi co a kam mám napsat PLS ale přesně at to pochodpím a mohu se to naučit díky "help"

 

-- čtv 14. říj 2010 20:42:55 --

 

Prosím vás moc moc PLS "help" já nevím kam co dát sem přece jen začátečník

Link to comment
Share on other sites

  • 0

No potřebuji třeba si udělám vrata a chci aby je mohl ovládat jen někdo tak mu dám oprávnění třeba příkaz /datp ID a nechci aby se to pokaždem přihláení musel znova dávat práva ale aby se mu to uložilo a při zapnuti zase načetlo a jak to píeš ty tak tak sem to zkoušel ale háže mi to erory a warningy tak nevím "help"

Link to comment
Share on other sites

  • 0
Stick":2c118bss]No potřebuji třeba si udělám vrata a chci aby je mohl ovládat jen někdo tak mu dám oprávnění třeba příkaz /datp ID a nechci aby se to pokaždem přihláení musel znova dávat práva ale aby se mu to uložilo a při zapnuti zase načetlo a jak to píeš ty tak tak sem to zkoušel ale háže mi to erory a warningy tak nevím "help"

 

Kazdy Error a Warning se da vyresit ;-)

Link to comment
Share on other sites

  • 0

Pošlu vám sem celi FS

Já nepochopil ty warningy a erory a necháputo jak to mám udělat do registrace když to nechci dávat do modu ale do FS "help"

Co je červeně chápu

Co zeleně nevím jestli je to dobře nebo nechápu a to jediné mi házi erory

 

 

#include

 

#define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1

 

#pragma tabsize 0

 

new opravneni[MAX_PLAYERS];

 

#define B_ORAN 0xFF8C00AA

 

stock PlayerName(playerid)

{

new name[24];

GetPlayerName(playerid, name, 24);

return name;

}

 

public OnFilterScriptInit()

{

print("\n--------------------------------------");

print(" Blank Filterscript by your name here");

print("--------------------------------------\n");

return 1;

}

 

public OnFilterScriptExit()

{

return 1;

}

public OnPlayerConnect(playerid)

{

opravneni[playerid]=dUserINT(PlayerName(playerid)).("Opravneni");//tohle nevím jestli je dobře nevím kam to mám dát

return 1;

}

 

public OnPlayerDisconnect(playerid, reason)

{

dUserSetINT(PlayerName(playerid)).("Opravneni",opravneni[playerid]);//toto sem sem připsal podle návodu

return 1;

}

public OnPlayerCommandText(playerid, cmdtext[])

{

dcmd(prav, 4,cmdtext);

dcmd(unprav, 6,cmdtext);

return 0;

}

 

dcmd_prav(playerid,params[])

{

new id = strval(params);

new string[80];

if (!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, B_ORAN,"[ ! ] Musíte být přihlášený přez rcon!");

if(!strlen(params)) return SendClientMessage(playerid,B_ORAN,"[ ! ] Použití: /prav [iD]");

if (opravneni[playerid] == 1) return SendClientMessage(playerid, B_ORAN,"[ ! ] Toto [iD] už má oprávnění!");

if (!IsPlayerConnected(id)) return SendClientMessage(playerid, B_ORAN,"[ ! ] Toto [iD] není na serveru!");

else

if (IsPlayerConnected(id))

{

opravneni[playerid] = 1;

format (string,sizeof(string),"[ ! ] Administrátor %s dal oprávnění hráči %s.",PlayerName(playerid),PlayerName(id));

SendClientMessageToAll(B_ORAN, string);

}

return 1;

}

 

dcmd_unprav(playerid,params[])

{

new id = strval(params);

new string[80];

if (!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, B_ORAN,"[ ! ] Musíte být přihlášený přez rcon!");

if(!strlen(params)) return SendClientMessage(playerid,B_ORAN,"[ ! ] Použití: /unprav [iD]");

if (opravneni[playerid] != 1) return SendClientMessage(playerid, B_ORAN,"[ ! ] Toto [iD] nemá oprávnění!");

if (!IsPlayerConnected(id)) return SendClientMessage(playerid, B_ORAN,"[ ! ] Toto [iD] není na serveru!");

else

if (IsPlayerConnected(id))

{

opravneni[playerid] = 0;

format (string,sizeof(string),"[ ! ] Administrátor %s sebral oprávnění hráči %s.",PlayerName(playerid),PlayerName(id));

SendClientMessageToAll(B_ORAN, string);

}

return 1;

}

 

Erory & Warningy

C:\Documents and Settings\PC\Plocha\opravneni.pwn(32) : error 017: undefined symbol "dUserINT"
C:\Documents and Settings\PC\Plocha\opravneni.pwn(32) : error 029: invalid expression, assumed zero
C:\Documents and Settings\PC\Plocha\opravneni.pwn(32) : warning 215: expression has no effect
C:\Documents and Settings\PC\Plocha\opravneni.pwn(38) : error 017: undefined symbol "dUserSetINT"
C:\Documents and Settings\PC\Plocha\opravneni.pwn(38) : error 029: invalid expression, assumed zero
C:\Documents and Settings\PC\Plocha\opravneni.pwn(38) : warning 215: expression has no effect

Link to comment
Share on other sites

  • 0

To sem sice měl ale problém je jinde taky!

A to vtom že se to ukládá na třeba ID1 takže příde naserver hráč pepa ID 1 dám mu oprávnění a on odejde a příde třeba vasek ID 1 a má taky oprávnění neukládá se to přímo na NICK!

Nevíte někdo co stím aby se to ukládalo na NICk a ne na např.ID 1 a každý hráč co by měl ID 1 by měl oprávnění PLS "help"

Link to comment
Share on other sites

  • 0
Stick":2edff2n3]To sem sice měl ale problém je jinde taky!

A to vtom že se to ukládá na třeba ID1 takže příde naserver hráč pepa ID 1 dám mu oprávnění a on odejde a příde třeba vasek ID 1 a má taky oprávnění neukládá se to přímo na NICK!

Nevíte někdo co stím aby se to ukládalo na NICk a ne na např.ID 1 a každý hráč co by měl ID 1 by měl oprávnění PLS "help"

 

Vsak sem ti rikal, ze to je kvuli tomu ze mas v Modu registraci a aji ve FS a mas tam nastavene ukladani a aby se to nepremazavalo tak to misto nicku hodi ID... cize musis udelat aby se ti to ukladalo do nejake slozky

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...