-
Příspěvků
457 -
Registrován
-
Aktivní
-
Vítězných dnů
7
Content Type
Profiles
Forums
Calendar
Gallery
SA-MP
Příspěvky posted by Hrb™
-
-
Zkusil jsem ti něco narychlo udělat. Jde to udělat více způsoby ale toto mě napadlo jako první:
public OnPlayerText(playerid, text[]) { new zprava[128]; format(zprava,sizeof(zprava),"(%d):",playerid); // do stringu uložíme hráčovo ID //-------------------------------- if(strlen(text) > 64) // pokud je počet znaků ve zprávě delší jak 64 { // text je delší jak 64 znaků new text1[2][65]; // proměnné //---------------------------- strmid(text1[0], text, 0, 64); // zpráva se rozdělí podle znaků od 0 do 64 strmid(text1[1], text, 64, 128); // zpráva se rozdělí podle znaků od 64 do 128 (max 128 znaků pro zprávu do chatu) //---------------------------- format(zprava,sizeof(zprava),"%s %s",zprava,text1[0]); // první řádek (načteme uložené hráčovo ID + 1. část textu) SendPlayerMessageToAll(playerid,zprava); // odešle zprávu //------------------------------ zprava[0] = '\0'; // vymaže předchozí string //------------------------------ format(zprava, sizeof(zprava), "- %s", text1[1]); // druhý řádek (již bez hráčova ID, 2. část textu) SendClientMessageToAll(-1, zprava); /// odešle zbytek zprávy } else { //pokud není počet znaků ve zprávě delší jak 64, odešle jen jeden řádek format(zprava,sizeof(zprava),"%s %s",zprava,text); // načteme uložené ID ve formatu + text zprávy SendPlayerMessageToAll(playerid, zprava); // odešleme zprávu } return 0; }
A napiš mi sem prosím, jestli to jede, netestoval jsem to. Dík
-
Mám dojem že ATomas psal v optimalizaci kódu i o map ikonkách http://pawno.cz/topic/25627-jak-odlehcit-mod-a-optimalizovat-streamery/
Někde je to tam napsané, projdi si to.
-
Já nevím jaký máš systém ukládání, jména proměnných,...
-
Normální příkaz a do něj dáš tvé ukládání věcí.
-
Na co tam máš tu 1 ? Máš mít: PlayerID, DialogID, style, "název ","neco 1 \n neco 2","tlacitko 1","tlacitko 2"
ShowPlayerDialog(playerid,1,DIALOG_ShopMenu,DIALOG_STYLE_LIST,"Car-Shop by {FF0000}Perjour","Cars\nMoto\n","OK","Konec");
tu "1" mezi playerid a DIALOG_ShopMenu smaž.
-
Změň si ID dialogu u těch "novinek". Máš zřejmě stejné jako u přihlašování
-
Dej sem kód těch věcí. Ale zkontroluj si, jestli máš v OnDialogResponse:
if(dialogid == ...)
{
if(response == 1) <-- toto
{
if(listitem == .. )
.....
-
Na co dělat:
switch(listitem) { case 0: SetPlayerScore(playerid, 0); case 1: SetPlayerScore(playerid, 1); case 2: SetPlayerScore(playerid, 2); case 3: SetPlayerScore(playerid, 3); case 4: SetPlayerScore(playerid, 4); case 5: SetPlayerScore(playerid, 5); }
Když můžeš místo toho prostě udělat:
SetPlayerScore(playerid, listitem);
-
máš tam 2x:
case 8: ....
Pokud chceš přidat více tipů, musíš přidat i na čísle u toho case:
switch(...) { case 0: case 1: case 2: .. }
-
GetPlayerID(jmenohrace)=idhrace[playerid];//Error: must be lvalue (non-constant)
Máš to naopak
-
Dakujem ale mam problem s tymto:
new PlayerInfo[MAX_PLAYERS][Min], PlayerInfo[MAX_PLAYERS][Hod];
lebo potom mi v tom publicu nahodi error ze undefined simbol hod aj min
pokud to chceš takto, tak to udělej přes enum:
enum Hrac_Info { Min, Hod }; new PlayerInfo[MAX_PLAYERS][Hrac_Info];
a pak můžeš jen dosazovat: PlayerInfo[playerid][Min] = ....
-
Použij třeba public OnPlayerInteriorChange a SetPlayerShopName
-
Moc hezký, mně se to líbí
-
tady -> for(new a; a < MAX_PLAYERS; a++{
chybí ")" -> for(new a; a < MAX_PLAYERS; a++) {
tady -> if(IsPlayerConnected(a){
chybí zase ")" -> if(IsPlayerConnected(a)) {
-
Zkoušel jsem to takto a jede mi to:
if((newkeys & (KEY_WALK | KEY_CROUCH)) == (KEY_WALK | KEY_CROUCH)) { SCM(playerid, 0xFF0000AA,"Uspešne as ti podarilo stlačiť ALT + C"); }
-
Hip to říká dobře, místo:
new penize_pickup, penize;
Musíš dat:
new penize_pickup[MAX_PLAYERS], penize[MAX_PLAYERS];
a k podmínkám pak přidat: penize[playerid] = ....
-
C:\Users\J1R1\Desktop\nový.pwn(36) : warning 217: loose indentation
Buďto si to odtabuj, nebo dej nahoru #pragma tabsize 0
a toto:
C:\Users\J1R1\Desktop\nový.pwn(148) : warning 203: symbol is never used: "private"
Znamená, že proměnnou new private = 1; Jsi nikde nepoužil. Takže ji můžeš smazat.
-
tento řádek je moc dlouhý:
ShowPlayerDialog(playerid, 1, DIALOG_STYLE_MSGBOX, "Vitej na serveri","Hrani na tomto servery či zaregistrovany nebo ne, souhlasíš s pravidly určené na serveru. \n1. Hrac nesmi vulgarne nadavat do chatu. \n2. Hrac nesmi vyuzivat bugy serveru. \n3. Hrac nesmi pouzivat cheaty, cleo scripty. \n4. Hrac ma zakazane pouzivat rasizmus! \n5. Hrac ma zakazane zabijet na spawnu. \n5. Ostatne pravidla najdete na webu.. \n6. Hlavne se bav \n\n\n\nTento GameMode je cisto novy a udelany, je to BETA VERZE! Tak prosim nepiste okolo toho zadne sracky! Bude se to vylepsovat ATD... \n\n\n\n\n\n\n\n\n\n\nVerze: BETA","Souhlasim","Nesouhlasim");
Musíš si ho rozdělit do véce řádků, tzn. třeba pomocí formatu nebo strcatu.Nahrad ho takto:
new string[540];
strcat(string,"Hrani na tomto servery či zaregistrovany nebo ne, souhlasíš s pravidly určené na serveru. \n1. Hrac nesmi vulgarne nadavat do chatu. \n2. Hrac nesmi vyuzivat bugy serveru. \n");strcat(string,"3. Hrac nesmi pouzivat cheaty, cleo scripty. \n4. Hrac ma zakazane pouzivat rasizmus! \n5. Hrac ma zakazane zabijet na spawnu. \n5. Ostatne pravidla najdete na webu.. \n");strcat(string,"6. Hlavne se bav \n\n\n\nTento GameMode je cisto novy a udelany, je to BETA VERZE! Tak prosim nepiste okolo toho zadne sracky! Bude se to vylepsovat ATD... \n\n\n\n\n\n\n\n\n\n\nVerze: BETA");ShowPlayerDialog(playerid, 1, DIALOG_STYLE_MSGBOX, "Vitej na serveri",string,"Souhlasim","Nesouhlasim");tady:SendClientMessage(playerid, "[ STUNT SERVER - RADA ] - Zaregistruj se nebo se logni! Podla toho ci si tu už hrál");ti chybí barva (...playerid, BARVA ,"[ STUNT ...)a OnDialogResponse má vypadat takto:public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]){if(dialogid == 1){if(!response){Kick(playerid);}}return 1;} -
SetTimeEx("PZivot",1000*60*2,false,"i",playerid); //2 minuty
Chybí ti tam "r" u SetTimerEx
-
Dej sem řádky.
-
jak máš sscanf, tak toto:
"is",id, reason))
nahraď tímto:
"us",id,reason))
-
I když vidíš menší podobnosti, nemusí to tak být. Hned za vším nehledejte sa-mp forko.Basketball upravený ze samp forka
Zdá se ti to.Zdá sa mi to alebo je fakt väčšina z RZE ?
Jinak děkuji za vcelku kladné komentáře
-
Stáhni si include YSI a dej do do složky "include", kterou najdeš u svého pawna.
-
Prostě musíš pochopit, že jiné koncovky než .mp3 a .pls ti to nepřehraje a nejde to udělat.
Ukládání-problém
v Herní (SA:MP, CS apod.)
Odesláno:
toto
nahrad tímto: