Aberon 3 Odesláno: 10. Listopad, 2010 Share Odesláno: 10. Listopad, 2010 Tak hledal jsem to ae nenasel, jestli to uz tu je tak bylo by fajn kdyby to moderator smazal. Krok 1. Defin: #define SCM SendClientMessage #define GPN GetPlayerName #define pi playerid #define SCM SendClientMessage - Vubec neni nutny, len skratka pro SendClientMessage, proste "SCM". #define GPN GetPlayerName - To stejny pouha skratka "GetPlayerName". #define pi playerid - skratka Stocky: stock PlayerName(pi) { new name[MAX_PLAYER_NAME]; GPN(pi, name, MAX_PLAYER_NAME); return name; } stock Chat(const string[]) { SMTSCHAT(0x0080FFFF, string); } stock SMTSCHAT(c, const string[]) { for(new i = 0; i <= MAX_PLAYERS; i++) { if(IsPlayerConnected(i) == 1) // posle tem ktery jsou pripojeni { if(alvl[i]) // dejte svoji podminku !! { SCM(i, c, string); // odesle zpravu } } } return 1; // ukonceni } Pozor!: stock PlayerName(pi) { new name[MAX_PLAYER_NAME]; GPN(pi, name, MAX_PLAYER_NAME); return name; = Pokud uz mate, tk to tam nedavejte, jestli mate misto PlayerName jmeno a tk, tk si len prepiste z "PlayerName" na to "Jmeno" - priklad. (taky nedavat ae prepsat to v prikazu.) a taky: if(alvl) - dejte tam svoji podminku, kdo nevi a chtel by pro rcon admina tak: dejte misto toho todle: if (!IsPlayerAdmin(i)) Krok 2. Samotny Prikaz: Nekam do modu ae ne do publicu! dcmd_chat(pi, params[]) // prikaz si klidne zmente to "chat" { if (!IsPlayerAdmin(playerid)) return SCM(pi, 0xFB0000FF, "[ Error ] Nejsi Rcon Admin."); // kdyz neni rcon admin. { new string[256]; if(!strlen(params)) return SCM(pi, 0xFB0000FF, "[ Error ] Pouzij: /chat [Text]"); // kdyz spatne pouzije format(string, 255, "* [ AdminChat ][ %s ]: [ %s ]", PlayerName(playerid),params); // Nick + Text Chat(string); // = Odesle zpravu. } return true; // konec } a nahoru do public OnPlayerCommandText dcmd(chat, 4,cmdtext); // chat - ma 4 pismenko proto 4, kdyby jste to chteli jinak( napr: achat - tak tam bude 5 misto 4). Trosku pro pochopeni: if (!IsPlayerAdmin(playerid)) return SCM(pi, 0xFB0000FF, "[ Error ] Nejsi Rcon Admin."); = Podminka a co se stane kdyz ji nesplni if(!strlen(params)) return SCM(pi, 0xFB0000FF, "[ Error ] Pouzij: /chat [Text]"); = Kdyz napise proste /chat bez textu. new string[256]; = String, aspon myslim, protoze mi to pokazdy delalo (nezarucuju, kdyztak opravte), max pismen co to napise v chatu. format(string, 255, "* [ AdminChat ][ %s ]: [ %s ]", PlayerName(pi),params); = Napise to do chatu to co napsal a pouze adminum, pokud tam bude Chat(string);. = Uvedu priklad: napsal jsem /chat ahoj - v chatu se objevi: = * [ AdminChat ][ NoXieroN ]: [ Ahoj ] no a return snad znate ukonceni. Pokud uz to je tak nic no... problemy piste mozna jsem nekde neco zapomnel, (doufam ze ne, ae vsecko je mozny). a fakt doufam ze to tady neni Link to comment Share on other sites More sharing options...
Guest [BJ]boban88 Odesláno: 11. Listopad, 2010 Share Odesláno: 11. Listopad, 2010 hmmm podla mna zbytocnosti + som to tusim videl v helpoch tu a aj na pawnboxu a myslim ze toto je ovela jednoduchsie if(cmdtext[1] == '!') {// toto '!'znamena ak da do chatboxu pred spravu ! new string[256]; new name[24]; GetPlayerName(playerid, name, 24); format(string, sizeof(string), "[Admin CHAT] [%d] %s: %s", playerid, name, cmdtext[1]); for(new i = 0; i < MAX_PLAYERS; i++) { if(IsPlayerConnected(i)) { if(AdminLevel[i] > 0) //zmenit na svoju premennu SendClientMessage(i, 0xFF0000AA, string); } } return 1; } ostatne je vysvetlene vyssie a j cele to ide do onplayercomandtext nad return 0; alebo return SCM podla toho co tam mate myslim ze toto je jednoduchsie Link to comment Share on other sites More sharing options...
Roox 1 Odesláno: 11. Listopad, 2010 Share Odesláno: 11. Listopad, 2010 Proč to takhle roztahovat ? Dyť není snad lehčí např. dcmd_chat(playerid, params[]) { if(VIP[playerid] == 0) return SendClientMessage(playerid, 0xFF0000AA, "Do chatu můžou psát pouze hráči s VIP."); if(!strlen(params)) return SendClientMessage(playerid, 0xFF0000AA, "Použij /chat [text]"); new string[128], name[24]; for(new i = 0; i < MAX_PLAYERS; i++) if(IsPlayerConnected(i)) { if(VIP[i] != 0) { GetPlayerName(i, name, 24); format(string, sizeof(string), "VIP chat (%s): %s", name, params); SendClientMessage(i, 0xFF0000AA, string); } } return 1; } } A nepotřebuješ k tomu žádný definice nebo stocky.... Myslím že je na několik věcí dávat do TuT stocky, protože to většina nepochopí Link to comment Share on other sites More sharing options...
Danny 37 Odesláno: 11. Listopad, 2010 Share Odesláno: 11. Listopad, 2010 aby bolo viac riadkov a mne to vyhovuje pretože už musím mať 1000 Link to comment Share on other sites More sharing options...
Guest Odesláno: 11. Listopad, 2010 Share Odesláno: 11. Listopad, 2010 roox ihneď ten string 256 zmaž stock SCHAT(const string[]) { SMTSCHAT(0x0080FFFF, string); } stock SMTSCHAT(c, const string[]) { for(new i = 0; i <= MAX_PLAYERS; i++) { if(IsPlayerConnected(i) == 1) // pošle těm který jsou připojení { if(alvl) // dejte svojí podmínku !! { SCM(i, c, string); // odešle zprávu } } } return 1; // ukončení } načo 2 ? keď to už chceš automaticky s farbou daj stock Chat(const string[]) { for(new i = 0; i <= MAX_PLAYERS; i++) { if(IsPlayerConnected(i) == 1) // pošle těm který jsou připojení { if(alvl[i]) // dejte svojí podmínku !! { SCM(i, 0xFFFFFFFF, string); // odešle zprávu } } } return 1; // ukončení } ďalej prečo if(IsPlayerConnected(i) == 1) ? je to návratová funkcia o 2 hodnôt (bool) if(!IsPlayerConnected(i)) return 0; alebo if(IsPlayerConnected(i)){ ... } btw bude to písať undefinited symbol "Chat" btw pekné to je Link to comment Share on other sites More sharing options...
Danny 37 Odesláno: 11. Listopad, 2010 Share Odesláno: 11. Listopad, 2010 C:\Users\Danny\Desktop\kupalisko.pwn(728) : error 017: undefined symbol "Chat" Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase 1 Error. neviete to opraviť? riadok Chat(string); Link to comment Share on other sites More sharing options...
Aberon 3 Odesláno: 11. Listopad, 2010 Author Share Odesláno: 11. Listopad, 2010 nemáš ten stock -- čtv 11. lis 2010 7:11:18 -- boban88":hf0fh5lt]hmmm podla mna zbytocnosti + som to tusim videl v helpoch tu a aj na pawnboxua myslim ze toto je ovela jednoduchsie if(cmdtext[1] == '!') {// toto '!'znamena ak da do chatboxu pred spravu ! new string[256]; new name[24]; GetPlayerName(playerid, name, 24); format(string, sizeof(string), "[Admin CHAT] [%d] %s: %s", playerid, name, cmdtext[1]); for(new i = 0; i < MAX_PLAYERS; i++) { if(IsPlayerConnected(i)) { if(AdminLevel[i] > 0) //zmenit na svoju premennu SendClientMessage(i, 0xFF0000AA, string); } } return 1; } ostatne je vysvetlene vyssie a j cele to ide do onplayercomandtext nad return 0; alebo return SCM podla toho co tam mate myslim ze toto je jednoduchsie nevím, v helpech jsem to neviděl, ani v návodech, jsem tu třetí den Link to comment Share on other sites More sharing options...
Danny 37 Odesláno: 11. Listopad, 2010 Share Odesláno: 11. Listopad, 2010 a kde ho mám dať? Link to comment Share on other sites More sharing options...
Aberon 3 Odesláno: 11. Listopad, 2010 Author Share Odesláno: 11. Listopad, 2010 já to mám pod define... stock Chat(const string[]) { for(new i = 0; i <= MAX_PLAYERS; i++) { if(IsPlayerConnected(i) == 1) // pošle těm který jsou připojení { if(alvl[i]) // dejte svojí podmínku !! { SCM(i, 0xFFFFFFFF, string); // odešle zprávu } } } return 1; // ukončení } tohle si tam dej Link to comment Share on other sites More sharing options...
Guest Odesláno: 11. Listopad, 2010 Share Odesláno: 11. Listopad, 2010 a to čo som ti napísal, na to nereeaguješ Link to comment Share on other sites More sharing options...
Aberon 3 Odesláno: 11. Listopad, 2010 Author Share Odesláno: 11. Listopad, 2010 lol zajímavý že hlavně mi to de a mám to asi 10x v módě Link to comment Share on other sites More sharing options...
Danny 37 Odesláno: 11. Listopad, 2010 Share Odesláno: 11. Listopad, 2010 if(alvl[i]) // dejte svojí podmínku !! sprav mi to na rcon to nwm Link to comment Share on other sites More sharing options...
Aberon 3 Odesláno: 11. Listopad, 2010 Author Share Odesláno: 11. Listopad, 2010 žeš nečetl to celý... Link to comment Share on other sites More sharing options...
Danny 37 Odesláno: 11. Listopad, 2010 Share Odesláno: 11. Listopad, 2010 ale aj ked to vložím pod define vôbec to nejde stále ten istý error Link to comment Share on other sites More sharing options...
Aberon 3 Odesláno: 11. Listopad, 2010 Author Share Odesláno: 11. Listopad, 2010 if (!IsPlayerAdmin(playerid)) pro rcon,, tk asi ti chybí dcmd(chat, 4,cmdtext); Link to comment Share on other sites More sharing options...
Danny 37 Odesláno: 11. Listopad, 2010 Share Odesláno: 11. Listopad, 2010 nie nechýba mi to... všetko mám iba ten stock niečo Link to comment Share on other sites More sharing options...
Aberon 3 Odesláno: 11. Listopad, 2010 Author Share Odesláno: 11. Listopad, 2010 pošli mi ten stock kterej tam máš Link to comment Share on other sites More sharing options...
Danny 37 Odesláno: 11. Listopad, 2010 Share Odesláno: 11. Listopad, 2010 stock PlayerName(pi) { new name[MAX_PLAYER_NAME]; GPN(pi, name, MAX_PLAYER_NAME); return name; } stock SCHAT(const string[]) { SMTSCHAT(0x0080FFFF, string); } stock SMTSCHAT(c, const string[]) { for(new i = 0; i <= MAX_PLAYERS; i++) { if(IsPlayerConnected(i) == 1) // posle tem ktery jsou pripojeni { if(alvl[i]) // dejte svoji podminku !! { SCM(i, c, string); // odesle zpravu } } } return 1; // ukonceni } Link to comment Share on other sites More sharing options...
Aberon 3 Odesláno: 11. Listopad, 2010 Author Share Odesláno: 11. Listopad, 2010 omg proč tam más "stock SCHAT" když tam má bejt: stock Chat .... // aha moje chyba Link to comment Share on other sites More sharing options...
Danny 37 Odesláno: 11. Listopad, 2010 Share Odesláno: 11. Listopad, 2010 ja som to odpisoval presne Link to comment Share on other sites More sharing options...
Guest Odesláno: 11. Listopad, 2010 Share Odesláno: 11. Listopad, 2010 vravím že si nečítal čo som napísal... btw bude to písať undefinited symbol "Chat" -- čtv 11. lis 2010 7:28:43 -- lol opisoval... ctrl + c, ctrl + v Link to comment Share on other sites More sharing options...
Danny 37 Odesláno: 11. Listopad, 2010 Share Odesláno: 11. Listopad, 2010 ee ja niesom kopirák jak ty ja sa chcem pawno naučiť... ja nekopčím ako styler a ostatní Link to comment Share on other sites More sharing options...
Aberon 3 Odesláno: 11. Listopad, 2010 Author Share Odesláno: 11. Listopad, 2010 xd, podle toho jak si ten tut vůbec nepřečet.. nevypadá Link to comment Share on other sites More sharing options...
Guest Odesláno: 11. Listopad, 2010 Share Odesláno: 11. Listopad, 2010 ja niesom kopirák jak ty lol :D Link to comment Share on other sites More sharing options...
Aberon 3 Odesláno: 11. Listopad, 2010 Author Share Odesláno: 11. Listopad, 2010 ja niesom kopirák jak ty lol :D to říkal na tebe? Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now