2killer2 0 Odesláno: 12. Leden, 2011 Share Odesláno: 12. Leden, 2011 Jak normalne?? Link to comment Share on other sites More sharing options...
Mattsy 29 Odesláno: 12. Leden, 2011 Share Odesláno: 12. Leden, 2011 nedal si sem { a } dal si tu každy neviem jaký riadok Link to comment Share on other sites More sharing options...
2killer2 0 Odesláno: 12. Leden, 2011 Share Odesláno: 12. Leden, 2011 public OnPlayerCommandText(playerid, cmdtext[]) { dcmd(info,4,cmdtext); dcmd(afk,3,cmdtext); if (strcmp("/info", cmdtext, true, 10) == 0) { SendClientMessage(playerid,COLOR_BLUE,"Mod vytvořil GB_Warilock"); SendClientMessage(playerid,COLOR_BLUE,"www.Mini-Parba.g6.cz"); SendClientMessage(playerid,COLOR_LIGHTBLUE,"Skype: skilerbykiller"); SendClientMessage(playerid,COLOR_GREEN,"ICQ: 644-109-079"); return 1; } if (strcmp("/help", cmdtext, true, 10) == 0) { SendClientMessage(playerid,0xFFFF00AA,"Příkazy jsou /info /help /rules /kill /info /afk"); return 1; } if (strcmp("/rules", cmdtext, true, 10) == 0) { SendClientMessage(playerid,COLOR_RED,"Je zakázáno cheatovat!"); SendClientMessage(playerid,COLOR_RED,"Je zakázán spawn-kill, heli-kill a car-kill!"); SendClientMessage(playerid,COLOR_RED,"Je zakázáno ničit hráčům auta a bezdůvodně jim nadávat!"); SendClientMessage(playerid,COLOR_RED,"Pokud někdo bude porušovat pravidla napište adminovi co je na serveru a ten udělí trest hráčí co porušuje pravidla!"); return 1; } if (strcmp("/kill", cmdtext, true, 10) == 0) { SetPlayerHealth(playerid,0); SendClientMessage(playerid,COLOR_RED,"Nechápu proč žádáš o smrt?? Ale když ji chceš máš ji mít."); return 1; } dcmd(info, 4, cmdtext); return 0; } dcmd_info(playerid, params[]){ #pragma unused params new string[256]; SendClientMessage(playerid,COLOR_BLUE,"Čaas:"); format(string,256,"Dni : %d || Hodin : %d || Minut : %d",den[playerid],hodina[playerid],minuta[playerid]); SendClientMessage(playerid, COLOR_BLUE, string); return 1; } public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger) { return 1; } public OnPlayerExitVehicle(playerid, vehicleid) { return 1; } public OnPlayerStateChange(playerid, newstate, oldstate) { return 1; } public OnPlayerEnterCheckpoint(playerid) { return 1; } public OnPlayerLeaveCheckpoint(playerid) { return 1; } public OnPlayerEnterRaceCheckpoint(playerid) { return 1; } public OnPlayerLeaveRaceCheckpoint(playerid) { return 1; } public OnRconCommand(cmd[]) { return 1; } public OnPlayerRequestSpawn(playerid) { return 1; } public OnObjectMoved(objectid) { return 1; } public OnPlayerObjectMoved(playerid, objectid) { return 1; } public OnPlayerPickUpPickup(playerid, pickupid) { return 1; } public OnVehicleMod(playerid, vehicleid, componentid) { return 1; } public OnVehiclePaintjob(playerid, vehicleid, paintjobid) { return 1; } public OnVehicleRespray(playerid, vehicleid, color1, color2) { return 1; } public OnPlayerSelectedMenuRow(playerid, row) { return 1; } public OnPlayerExitedMenu(playerid) { return 1; } public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid) { return 1; } public OnPlayerKeyStateChange(playerid, newkeys, oldkeys) { //jako u prikazu afk akorat kdyz stiskne jakoukoli klavesu ktera je definovana pawnem if(AFK[playerid] == true) { new string[128]; format(string,sizeof(string),"[ AFK ] Hráč %s je zpět ve hře !",Jmeno(playerid)); SendClientMessageToAll(COLOR_GREY,string); TogglePlayerControllable(playerid,1); SetPlayerName(playerid,UlozeneJmeno[playerid]); AFK[playerid] = false; OldAFK[playerid] = 10; SetTimerEx("PovolitAFK",1000,0,"i",playerid); return 1; } public OnRconLoginAttempt(ip[], password[], success) { return 1; } public OnPlayerUpdate(playerid) { return 1; } public OnPlayerStreamIn(playerid, forplayerid) { return 1; } public OnPlayerStreamOut(playerid, forplayerid) { return 1; } public OnVehicleStreamIn(vehicleid, forplayerid) { return 1; } public OnVehicleStreamOut(vehicleid, forplayerid) { return 1; } public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { if(dialogid == 1) { if(response == 1) { if (udb_Exists(PlayerName(playerid))) return ShowPlayerDialog(playerid,2,DIALOG_STYLE_INPUT,"Přihlášení","Účet již existuje přihlaš se !","Přihlásit","Odpojit"); if (strlen(inputtext)==0) return ShowPlayerDialog(playerid,1,DIALOG_STYLE_INPUT,"Registrace","Musíš napsat heslo !","Registrovat","Odpojit"); if (udb_Create(PlayerName(playerid),inputtext)) return ShowPlayerDialog(playerid,2,DIALOG_STYLE_INPUT,"Registrace","Výborně, nyní napiš znovu heslo !","Registrovat","Odpojit"); } if(response == 2) { Kick(playerid); } } //============================================================================== if(dialogid == 2) { if(response == 1) { if (strlen(inputtext)==0) return ShowPlayerDialog(playerid,2,DIALOG_STYLE_INPUT,"Přihlášení","Musíš zadat heslo !\nNapiš heslo !","Použít","Odpojit"); if (udb_CheckLogin(PlayerName(playerid),inputtext)) { GivePlayerMoney(playerid,dUserINT(PlayerName(playerid)).("money")-GetPlayerMoney(playerid)); PLAYERLIST_authed[playerid] = true; return SendClientMessage(playerid, COLOR_WHITE, "Úspěšně přihlášen !"); } return ShowPlayerDialog(playerid,2,DIALOG_STYLE_INPUT,"Přihlášení","Nespravne heslo !","Přihlásit","Odpojit"); } if(response == 2) { Kick(playerid); } } return 1; } public OnPlayerClickPlayer(playerid, clickedplayerid, source) { return 1; } public cas(playerid) { minuta[playerid] = minuta[playerid]+1; if (minuta[playerid] > 59) { minuta[playerid] = 0; hodina[playerid] = hodina[playerid]+1; if (hodina[playerid] > 23) { hodina[playerid] = 0; den[playerid] = den[playerid]+1; } } } //------------------------------------------------------------------------------ public KontrolaPozice() { new Float:X,Float:Y,Float:Z;//promene do kterych budeme zapisovat for(new i;i { if(IsPlayerConnected(i))//vsechny obsazene sloty { GetPlayerPos(i,X,Y,Z);//zjistime pozici if(SaveX == X && SaveY == Y && SaveZ == Z) { if(AFK == false) dcmd_afk(i," ");//kdyz bude na stejnych radkach jako minule a nebude afk tak ho dame ho do afk } //ulozime pro dalsi hodnoceni SaveX = X; SaveY = Y; SaveZ = Z; } } return 1; } dcmd_afk(playerid,params[])//odeslan callback z OnPlayerCommandText { if(IsPlayerConnected(playerid)) { new string[128];//promena do ktere si budeme zapisovat texty if(AFK[playerid] == false)//kdyz hrac neni AFK { if(OldAFK[playerid] != 0)//kdyz neubehlo 10 sekund od vraceni k pocitaci { format(string,sizeof(string),"[ ! ] Tento prikaz muzete pouzit az za %d sekund",OldAFK[playerid]);//dosadime si do spravy SendClientMessage(playerid,BARVA_BILA,string);//odesleme return 1;//zastavime prkaz } else if(strlen(params) == 0)//kdyz uz ubehlo 10 sekund od navraceni a nezada zadny duvod za afk proste jenom ciste prikaz /afk { if(!VolneOkoli(playerid)) return SendClientMessage(playerid,BARVA_BILA,"[ ! ] Ve vasi blizkosti je nejaky hrac !");//public vysvetlen nize format(string,sizeof(string),"[ AFK ] Hráč %s odešel na chvíli od PC !",Jmeno(playerid));//dosadime spravu SendClientMessageToAll(COLOR_GREY,string);//odesleme TogglePlayerControllable(playerid,0);//smzarime AFK[playerid] = true;//dame promenou aby sme vedeli ze je afk SendClientMessage(playerid,BARVA_BILA,"Pro navrat /afk");//aprava aby vedel ja kse vratit format(UlozeneJmeno[playerid],MAX_PLAYER_NAME,Jmeno(playerid));//ulozime si hracovo jmeno new name[MAX_PLAYER_NAME];//promena do ktere ulozime nove jmeno format(name,MAX_PLAYER_NAME,"[AFK]%s",Jmeno(playerid));//pred jeho jmeno pridame [AFK] SetPlayerName(playerid,name);//zmenime jmeno }else{//kdyz zada nejaky duvod treba /afk du na WC if(!VolneOkoli(playerid)) return SendClientMessage(playerid,BARVA_BILA,"[ ! ] Ve vasi blizkosti je nejaky hrac !"); format(string,sizeof(string),"[ AFK ] Hráč %s odešel na chvíli od PC ! [ Důvod: %s ]",Jmeno(playerid),params);//zase dosadiem ale uz s duvodem .. dal uz to znate.. SendClientMessageToAll(COLOR_GREY,string); TogglePlayerControllable(playerid,0); AFK[playerid] = true; SendClientMessage(playerid,BARVA_BILA,"Pro navrat /afk"); format(UlozeneJmeno[playerid],MAX_PLAYER_NAME,Jmeno(playerid)); new name[MAX_PLAYER_NAME]; format(name,MAX_PLAYER_NAME,"[AFK]%s",Jmeno(playerid)); SetPlayerName(playerid,name); } } else if(AFK[playerid] == true)//kdyz je afk { format(string,sizeof(string),"[ AFK ] Hráč %s je zpět ve hře !",Jmeno(playerid));//zase dosadime spravu SendClientMessageToAll(COLOR_GREY,string);//odesleme TogglePlayerControllable(playerid,1);//rozmrazime SetPlayerName(playerid,UlozeneJmeno[playerid]);//vratime jeho jmeno AFK[playerid] = false;//promena aby sme vedeli ze uz neni afk OldAFK[playerid] = 10;//promena ze ktere budeme odecitat kazdou sekundu SetTimerEx("PovolitAFK",1000,0,"i",playerid);//a timer ve kterem budeme odecitat } } return 1; } public PovolitAFK(playerid)//public ktery si vyvolavame sekundovym tiemrem { OldAFK[playerid]--;//odesmete promenou if(OldAFK[playerid] > 0) SetTimerEx("PovolitAFK",1000,0,"i",playerid);//kdyz promena nebdue nula pustime public return 1; } -- stř 12. led 2011 21:22:28 -- public OnPlayerCommandText(playerid, cmdtext[]) { dcmd(info,4,cmdtext); dcmd(afk,3,cmdtext); if (strcmp("/info", cmdtext, true, 10) == 0) { SendClientMessage(playerid,COLOR_BLUE,"Mod vytvořil GB_Warilock"); SendClientMessage(playerid,COLOR_BLUE,"www.Mini-Parba.g6.cz"); SendClientMessage(playerid,COLOR_LIGHTBLUE,"Skype: skilerbykiller"); SendClientMessage(playerid,COLOR_GREEN,"ICQ: 644-109-079"); return 1; } if (strcmp("/help", cmdtext, true, 10) == 0) { SendClientMessage(playerid,0xFFFF00AA,"Příkazy jsou /info /help /rules /kill /info /afk"); return 1; } if (strcmp("/rules", cmdtext, true, 10) == 0) { SendClientMessage(playerid,COLOR_RED,"Je zakázáno cheatovat!"); SendClientMessage(playerid,COLOR_RED,"Je zakázán spawn-kill, heli-kill a car-kill!"); SendClientMessage(playerid,COLOR_RED,"Je zakázáno ničit hráčům auta a bezdůvodně jim nadávat!"); SendClientMessage(playerid,COLOR_RED,"Pokud někdo bude porušovat pravidla napište adminovi co je na serveru a ten udělí trest hráčí co porušuje pravidla!"); return 1; } if (strcmp("/kill", cmdtext, true, 10) == 0) { SetPlayerHealth(playerid,0); SendClientMessage(playerid,COLOR_RED,"Nechápu proč žádáš o smrt?? Ale když ji chceš máš ji mít."); return 1; } dcmd(info, 4, cmdtext); return 0; } dcmd_info(playerid, params[]){ #pragma unused params new string[256]; SendClientMessage(playerid,COLOR_BLUE,"Čaas:"); format(string,256,"Dni : %d || Hodin : %d || Minut : %d",den[playerid],hodina[playerid],minuta[playerid]); SendClientMessage(playerid, COLOR_BLUE, string); return 1; } public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger) { return 1; } public OnPlayerExitVehicle(playerid, vehicleid) { return 1; } public OnPlayerStateChange(playerid, newstate, oldstate) { return 1; } public OnPlayerEnterCheckpoint(playerid) { return 1; } public OnPlayerLeaveCheckpoint(playerid) { return 1; } public OnPlayerEnterRaceCheckpoint(playerid) { return 1; } public OnPlayerLeaveRaceCheckpoint(playerid) { return 1; } public OnRconCommand(cmd[]) { return 1; } public OnPlayerRequestSpawn(playerid) { return 1; } public OnObjectMoved(objectid) { return 1; } public OnPlayerObjectMoved(playerid, objectid) { return 1; } public OnPlayerPickUpPickup(playerid, pickupid) { return 1; } public OnVehicleMod(playerid, vehicleid, componentid) { return 1; } public OnVehiclePaintjob(playerid, vehicleid, paintjobid) { return 1; } public OnVehicleRespray(playerid, vehicleid, color1, color2) { return 1; } public OnPlayerSelectedMenuRow(playerid, row) { return 1; } public OnPlayerExitedMenu(playerid) { return 1; } public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid) { return 1; } public OnPlayerKeyStateChange(playerid, newkeys, oldkeys) { //jako u prikazu afk akorat kdyz stiskne jakoukoli klavesu ktera je definovana pawnem if(AFK[playerid] == true) { new string[128]; format(string,sizeof(string),"[ AFK ] Hráč %s je zpět ve hře !",Jmeno(playerid)); SendClientMessageToAll(COLOR_GREY,string); TogglePlayerControllable(playerid,1); SetPlayerName(playerid,UlozeneJmeno[playerid]); AFK[playerid] = false; OldAFK[playerid] = 10; SetTimerEx("PovolitAFK",1000,0,"i",playerid); return 1; } public OnRconLoginAttempt(ip[], password[], success) { return 1; } public OnPlayerUpdate(playerid) { return 1; } public OnPlayerStreamIn(playerid, forplayerid) { return 1; } public OnPlayerStreamOut(playerid, forplayerid) { return 1; } public OnVehicleStreamIn(vehicleid, forplayerid) { return 1; } public OnVehicleStreamOut(vehicleid, forplayerid) { return 1; } public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { if(dialogid == 1) { if(response == 1) { if (udb_Exists(PlayerName(playerid))) return ShowPlayerDialog(playerid,2,DIALOG_STYLE_INPUT,"Přihlášení","Účet již existuje přihlaš se !","Přihlásit","Odpojit"); if (strlen(inputtext)==0) return ShowPlayerDialog(playerid,1,DIALOG_STYLE_INPUT,"Registrace","Musíš napsat heslo !","Registrovat","Odpojit"); if (udb_Create(PlayerName(playerid),inputtext)) return ShowPlayerDialog(playerid,2,DIALOG_STYLE_INPUT,"Registrace","Výborně, nyní napiš znovu heslo !","Registrovat","Odpojit"); } if(response == 2) { Kick(playerid); } } //============================================================================== if(dialogid == 2) { if(response == 1) { if (strlen(inputtext)==0) return ShowPlayerDialog(playerid,2,DIALOG_STYLE_INPUT,"Přihlášení","Musíš zadat heslo !\nNapiš heslo !","Použít","Odpojit"); if (udb_CheckLogin(PlayerName(playerid),inputtext)) { GivePlayerMoney(playerid,dUserINT(PlayerName(playerid)).("money")-GetPlayerMoney(playerid)); PLAYERLIST_authed[playerid] = true; return SendClientMessage(playerid, COLOR_WHITE, "Úspěšně přihlášen !"); } return ShowPlayerDialog(playerid,2,DIALOG_STYLE_INPUT,"Přihlášení","Nespravne heslo !","Přihlásit","Odpojit"); } if(response == 2) { Kick(playerid); } } return 1; } public OnPlayerClickPlayer(playerid, clickedplayerid, source) { return 1; } public cas(playerid) { minuta[playerid] = minuta[playerid]+1; if (minuta[playerid] > 59) { minuta[playerid] = 0; hodina[playerid] = hodina[playerid]+1; if (hodina[playerid] > 23) { hodina[playerid] = 0; den[playerid] = den[playerid]+1; } } } //------------------------------------------------------------------------------ public KontrolaPozice() { new Float:X,Float:Y,Float:Z;//promene do kterych budeme zapisovat for(new i;i { if(IsPlayerConnected(i))//vsechny obsazene sloty { GetPlayerPos(i,X,Y,Z);//zjistime pozici if(SaveX == X && SaveY == Y && SaveZ == Z) { if(AFK == false) dcmd_afk(i," ");//kdyz bude na stejnych radkach jako minule a nebude afk tak ho dame ho do afk } //ulozime pro dalsi hodnoceni SaveX = X; SaveY = Y; SaveZ = Z; } } return 1; } dcmd_afk(playerid,params[])//odeslan callback z OnPlayerCommandText { if(IsPlayerConnected(playerid)) { new string[128];//promena do ktere si budeme zapisovat texty if(AFK[playerid] == false)//kdyz hrac neni AFK { if(OldAFK[playerid] != 0)//kdyz neubehlo 10 sekund od vraceni k pocitaci { format(string,sizeof(string),"[ ! ] Tento prikaz muzete pouzit az za %d sekund",OldAFK[playerid]);//dosadime si do spravy SendClientMessage(playerid,BARVA_BILA,string);//odesleme return 1;//zastavime prkaz } else if(strlen(params) == 0)//kdyz uz ubehlo 10 sekund od navraceni a nezada zadny duvod za afk proste jenom ciste prikaz /afk { if(!VolneOkoli(playerid)) return SendClientMessage(playerid,BARVA_BILA,"[ ! ] Ve vasi blizkosti je nejaky hrac !");//public vysvetlen nize format(string,sizeof(string),"[ AFK ] Hráč %s odešel na chvíli od PC !",Jmeno(playerid));//dosadime spravu SendClientMessageToAll(COLOR_GREY,string);//odesleme TogglePlayerControllable(playerid,0);//smzarime AFK[playerid] = true;//dame promenou aby sme vedeli ze je afk SendClientMessage(playerid,BARVA_BILA,"Pro navrat /afk");//aprava aby vedel ja kse vratit format(UlozeneJmeno[playerid],MAX_PLAYER_NAME,Jmeno(playerid));//ulozime si hracovo jmeno new name[MAX_PLAYER_NAME];//promena do ktere ulozime nove jmeno format(name,MAX_PLAYER_NAME,"[AFK]%s",Jmeno(playerid));//pred jeho jmeno pridame [AFK] SetPlayerName(playerid,name);//zmenime jmeno }else{//kdyz zada nejaky duvod treba /afk du na WC if(!VolneOkoli(playerid)) return SendClientMessage(playerid,BARVA_BILA,"[ ! ] Ve vasi blizkosti je nejaky hrac !"); format(string,sizeof(string),"[ AFK ] Hráč %s odešel na chvíli od PC ! [ Důvod: %s ]",Jmeno(playerid),params);//zase dosadiem ale uz s duvodem .. dal uz to znate.. SendClientMessageToAll(COLOR_GREY,string); TogglePlayerControllable(playerid,0); AFK[playerid] = true; SendClientMessage(playerid,BARVA_BILA,"Pro navrat /afk"); format(UlozeneJmeno[playerid],MAX_PLAYER_NAME,Jmeno(playerid)); new name[MAX_PLAYER_NAME]; format(name,MAX_PLAYER_NAME,"[AFK]%s",Jmeno(playerid)); SetPlayerName(playerid,name); } } else if(AFK[playerid] == true)//kdyz je afk { format(string,sizeof(string),"[ AFK ] Hráč %s je zpět ve hře !",Jmeno(playerid));//zase dosadime spravu SendClientMessageToAll(COLOR_GREY,string);//odesleme TogglePlayerControllable(playerid,1);//rozmrazime SetPlayerName(playerid,UlozeneJmeno[playerid]);//vratime jeho jmeno AFK[playerid] = false;//promena aby sme vedeli ze uz neni afk OldAFK[playerid] = 10;//promena ze ktere budeme odecitat kazdou sekundu SetTimerEx("PovolitAFK",1000,0,"i",playerid);//a timer ve kterem budeme odecitat } } return 1; } public PovolitAFK(playerid)//public ktery si vyvolavame sekundovym tiemrem { OldAFK[playerid]--;//odesmete promenou if(OldAFK[playerid] > 0) SetTimerEx("PovolitAFK",1000,0,"i",playerid);//kdyz promena nebdue nula pustime public return 1; } Link to comment Share on other sites More sharing options...
Guest Kubas Odesláno: 12. Leden, 2011 Share Odesláno: 12. Leden, 2011 nedal si sem { a } dal si tu každy neviem jaký riadok Mattsy určite tam nekde nebude mit zavorku proto mu to vyhodil nekolik erroru Link to comment Share on other sites More sharing options...
Mattsy 29 Odesláno: 12. Leden, 2011 Share Odesláno: 12. Leden, 2011 nedal si sem { a } dal si tu každy neviem jaký riadok Mattsy určite tam nekde nebude mit zavorku proto mu to vyhodil nekolik erroru veď to hej lenže nato aby som zistil kde tak mi tu musí zátvorky dať Link to comment Share on other sites More sharing options...
DooM 93 Odesláno: 12. Leden, 2011 Share Odesláno: 12. Leden, 2011 #include new bool:AFK[MAX_PLAYERS]; new OldAFK[MAX_PLAYERS]; new UlozeneJmeno[MAX_PLAYERS][MAX_PLAYER_NAME]; new Float:SaveX[MAX_PLAYERS],Float:SaveY[MAX_PLAYERS],Float:SaveZ[MAX_PLAYERS]; #define BARVA_SEDA 0xAFAFAFAA #define BARVA_BILA 0xEFEFF7AA #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 forward PovolitAFK(playerid); forward KontrolaPozice(); public OnGameModeInit() { SetTimer("KontrolaPozice",60000,1);//tiemr ktery bude kontrolovat kazdou minutu pozici hrace return 1; } public OnPlayerDisconnect(playerid, reason) { AFK[playerid] = false;//zrusime mu afk aby dalsi hrac co prijde nemel problemy s titmo prikazem OldAFK[playerid] = 0;//jistota je jistota return 1; } public OnPlayerCommandText(playerid, cmdtext[]) { dcmd(afk,3,cmdtext); return 1; } dcmd_afk(playerid,params[])//odeslan callback z OnPlayerCommandText { if(IsPlayerConnected(playerid)) { new string[128];//promena do ktere si budeme zapisovat texty if(AFK[playerid] == false)//kdyz hrac neni AFK { if(OldAFK[playerid] != 0)//kdyz neubehlo 10 sekund od vraceni k pocitaci { format(string,sizeof(string),"[ ! ] Tento prikaz muzete pouzit az za %d sekund",OldAFK[playerid]);//dosadime si do spravy SendClientMessage(playerid,BARVA_BILA,string);//odesleme return 1;//zastavime prkaz } else if(strlen(params) == 0)//kdyz uz ubehlo 10 sekund od navraceni a nezada zadny duvod za afk proste jenom ciste prikaz /afk { if(!VolneOkoli(playerid)) return SendClientMessage(playerid,BARVA_BILA,"[ ! ] Ve vasi blizkosti je nejaky hrac !");//public vysvetlen nize format(string,sizeof(string),"[ AFK ] Hráč %s odešel na chvíli od PC !",Jmeno(playerid));//dosadime spravu SendClientMessageToAll(BARVA_SEDA,string);//odesleme TogglePlayerControllable(playerid,0);//smzarime AFK[playerid] = true;//dame promenou aby sme vedeli ze je afk SendClientMessage(playerid,BARVA_BILA,"Pro navrat /afk");//aprava aby vedel ja kse vratit format(UlozeneJmeno[playerid],MAX_PLAYER_NAME,Jmeno(playerid));//ulozime si hracovo jmeno new name[MAX_PLAYER_NAME];//promena do ktere ulozime nove jmeno format(name,MAX_PLAYER_NAME,"[AFK]%s",Jmeno(playerid));//pred jeho jmeno pridame [AFK] SetPlayerName(playerid,name);//zmenime jmeno }else{//kdyz zada nejaky duvod treba /afk du na WC if(!VolneOkoli(playerid)) return SendClientMessage(playerid,BARVA_BILA,"[ ! ] Ve vasi blizkosti je nejaky hrac !"); format(string,sizeof(string),"[ AFK ] Hráč %s odešel na chvíli od PC ! [ Důvod: %s ]",Jmeno(playerid),params);//zase dosadiem ale uz s duvodem .. dal uz to znate.. SendClientMessageToAll(BARVA_SEDA,string); TogglePlayerControllable(playerid,0); AFK[playerid] = true; SendClientMessage(playerid,BARVA_BILA,"Pro navrat /afk"); format(UlozeneJmeno[playerid],MAX_PLAYER_NAME,Jmeno(playerid)); new name[MAX_PLAYER_NAME]; format(name,MAX_PLAYER_NAME,"[AFK]%s",Jmeno(playerid)); SetPlayerName(playerid,name); } } else if(AFK[playerid] == true)//kdyz je afk { format(string,sizeof(string),"[ AFK ] Hráč %s je zpět ve hře !",Jmeno(playerid));//zase dosadime spravu SendClientMessageToAll(BARVA_SEDA,string);//odesleme TogglePlayerControllable(playerid,1);//rozmrazime SetPlayerName(playerid,UlozeneJmeno[playerid]);//vratime jeho jmeno AFK[playerid] = false;//promena aby sme vedeli ze uz neni afk OldAFK[playerid] = 10;//promena ze ktere budeme odecitat kazdou sekundu SetTimerEx("PovolitAFK",1000,0,"i",playerid);//a timer ve kterem budeme odecitat } } return 1; } public OnPlayerKeyStateChange(playerid, newkeys, oldkeys) { //jako u prikazu afk akorat kdyz stiskne jakoukoli klavesu ktera je definovana pawnem if(AFK[playerid] == true) { new string[128]; format(string,sizeof(string),"[ AFK ] Hráč %s je zpět ve hře !",Jmeno(playerid)); SendClientMessageToAll(BARVA_SEDA,string); TogglePlayerControllable(playerid,1); SetPlayerName(playerid,UlozeneJmeno[playerid]); AFK[playerid] = false; OldAFK[playerid] = 10; SetTimerEx("PovolitAFK",1000,0,"i",playerid); } return 1; } public PovolitAFK(playerid)//public ktery si vyvolavame sekundovym tiemrem { OldAFK[playerid]--;//odesmete promenou if(OldAFK[playerid] > 0) SetTimerEx("PovolitAFK",1000,0,"i",playerid);//kdyz promena nebdue nula pustime public return 1; } public KontrolaPozice() { new Float:X,Float:Y,Float:Z;//promene do kterych budeme zapisovat for(new i;i { if(IsPlayerConnected(i))//vsechny obsazene sloty { GetPlayerPos(i,X,Y,Z);//zjistime pozici if(SaveX[i] == X && SaveY[i] == Y && SaveZ[i] == Z) { if(AFK[i] == false) dcmd_afk(i," ");//kdyz bude na stejnych radkach jako minule a nebude afk tak ho dame ho do afk } //ulozime pro dalsi hodnoceni SaveX[i] = X; SaveY[i] = Y; SaveZ[i] = Z; } } return 1; } stock VolneOkoli(playerid) { for(new i;i { if(IsPlayerConnected(i))//obsazene id { if(DistanceBTWPlayers(playerid,i) < 10) return 0;// kdyz bude nekdo blize jak 10 jednotek odesleme do podminky hodnotu nula } } return 1;//kdyz nebude nidko poblic odesleme hodnotu 1 } stock DistanceBTWPlayers(playerid,playerid2) { new Float:x1,Float:y1,Float:z1,Float:x2,Float:y2,Float:z2,Float:tmpdis;//nadefinujeme si promene do kterych si zapiseme pozice hracu GetPlayerPos(playerid,x1,y1,z1);//zjistime pozici prvniho hrace GetPlayerPos(playerid2,x2,y2,z2);//zjistime pozii druheho tmpdis = floatsqroot(floatpower(floatabs(floatsub(x2,x1)),2)+floatpower(floatabs(floatsub(y2,y1)),2)+floatpower(floatabs(floatsub(z2,z1)),2));//slet funkci nema cenu vsvetlovat chytrak psal dobry tut "nejaky ty funkce" tam sou popsane return floatround(tmpdis);//vydlesek zaokrouhlime na cele cislo } stock Jmeno(playerid)//stock kterym zjistime jmeno hrace aby jsme porad nemuseli pouzivat GetPlayername { new p[MAX_PLAYER_NAME]; if(IsPlayerConnected(playerid)) GetPlayerName(playerid,p,MAX_PLAYER_NAME); return p; } Link to comment Share on other sites More sharing options...
Mattsy 29 Odesláno: 12. Leden, 2011 Share Odesláno: 12. Leden, 2011 public OnPlayerKeyStateChange(playerid, newkeys, oldkeys) { if(AFK[playerid] == true) { new string[128]; format(string,sizeof(string),"[ AFK ] Hráč %s je zpět ve hře !",Jmeno(playerid)); SendClientMessageToAll(COLOR_GREY,string); TogglePlayerControllable(playerid,1); SetPlayerName(playerid,UlozeneJmeno[playerid]); AFK[playerid] = false; OldAFK[playerid] = 10; SetTimerEx("PovolitAFK",1000,0,"i",playerid); }//si tu nemal return 1; } Link to comment Share on other sites More sharing options...
DooM 93 Odesláno: 12. Leden, 2011 Share Odesláno: 12. Leden, 2011 public OnPlayerKeyStateChange(playerid, newkeys, oldkeys) { if(AFK[playerid] == true) { new string[128]; format(string,sizeof(string),"[ AFK ] Hráč %s je zpět ve hře !",Jmeno(playerid)); SendClientMessageToAll(COLOR_GREY,string); TogglePlayerControllable(playerid,1); SetPlayerName(playerid,UlozeneJmeno[playerid]); AFK[playerid] = false; OldAFK[playerid] = 10; SetTimerEx("PovolitAFK",1000,0,"i",playerid); }//si tu nemal return 1; } To jsi cornul odemne? Link to comment Share on other sites More sharing options...
Mattsy 29 Odesláno: 12. Leden, 2011 Share Odesláno: 12. Leden, 2011 ne, dal tu riadky ak si si nevšimol tak som si to pozrel, tvoje mi vyhodilo že si odoslal keď som išiel poslať Link to comment Share on other sites More sharing options...
DooM 93 Odesláno: 12. Leden, 2011 Share Odesláno: 12. Leden, 2011 ne, dal tu riadky ak si si nevšimol tak som si to pozrel, tvoje mi vyhodilo že si odoslal keď som išiel poslať To si dve minuty psal return? No neresim to je jedno hlavne ze to pomohlo .... Link to comment Share on other sites More sharing options...
Mattsy 29 Odesláno: 12. Leden, 2011 Share Odesláno: 12. Leden, 2011 ne, dal tu riadky ak si si nevšimol tak som si to pozrel, tvoje mi vyhodilo že si odoslal keď som išiel poslať To si dve minuty psal return? No neresim to je jedno hlavne ze to pomohlo .... jžš ne, kým som našiel čo tam je za problém v tých riadkoch...máš jedno omg prečo by som mal jednú blbú zátvorku od teba opísať, si myslíš že si neviem čo by si doplnil zátvorku?jak keby som musel kopírovať zátvorku v helpe, omg a naviac ty si mu dal celý skript ja som mu dal konkrétny problém... Link to comment Share on other sites More sharing options...
DooM 93 Odesláno: 12. Leden, 2011 Share Odesláno: 12. Leden, 2011 ne, dal tu riadky ak si si nevšimol tak som si to pozrel, tvoje mi vyhodilo že si odoslal keď som išiel poslať To si dve minuty psal return? No neresim to je jedno hlavne ze to pomohlo .... jžš ne, kým som našiel čo tam je za problém v tých riadkoch...máš jedno omg prečo by som mal jednú blbú zátvorku od teba opísať, si myslíš že si neviem čo by si doplnil zátvorku?jak keby som musel kopírovať zátvorku v helpe, omg a naviac ty si mu dal celý skript ja som mu dal konkrétny problém... Ajo zapomel sem to oznacit cervene lol Nerikam zes to zkopcil a uz to neresim! Link to comment Share on other sites More sharing options...
2killer2 0 Odesláno: 12. Leden, 2011 Share Odesláno: 12. Leden, 2011 Uz to mam dikes Link to comment Share on other sites More sharing options...
EnginER 0 Odesláno: 17. Červen, 2011 Share Odesláno: 17. Červen, 2011 Je tam niekde chyba neviem kde neviem tak dobre pawno aby som ju nasiel ale proste nikto neni na servery tam /afk a napise ze nejaky hrac je v mojej blizkosti EDIT:// ja chcem aby to bolo tak ze nikto nesmie byt pri tebe nechcem to z tade dat kompletne prec chcem to len opravit a nwm jak Link to comment Share on other sites More sharing options...
Tomas67 0 Odesláno: 4. Srpen, 2012 Share Odesláno: 4. Srpen, 2012 Je tam niekde chyba neviem kde neviem tak dobre pawno aby som ju nasiel ale proste nikto neni na servery tam /afk a napise ze nejaky hrac je v mojej blizkosti EDIT:// ja chcem aby to bolo tak ze nikto nesmie byt pri tebe nechcem to z tade dat kompletne prec chcem to len opravit a nwm jak Zdravím, toto isté aj mne robí, keď dám kompiláciu, 0x error, 0x warning, no ked som v hre a dam /afk tak napise vo vasej blizskosti je hrac. Ďakujem za pomoc Link to comment Share on other sites More sharing options...
dodik159357 0 Odesláno: 9. Srpen, 2012 Share Odesláno: 9. Srpen, 2012 hele lidi sem zacatecnik kde mam to vsetko co tam pise vlozit prosim vas ?? surne dekuji a jak to mam vlastne vkladat proc to neni naras v jednom ale rozdeleno do vic okenku ?? Link to comment Share on other sites More sharing options...
Petr 44 Odesláno: 9. Srpen, 2012 Share Odesláno: 9. Srpen, 2012 Doporučuji ti začít nějákým teoretickým návodem, kde se seznámíš ze základy a syntaxem. Pak už sám budeš vědět co a jak a tvorba GM ti půjde lépe. Link to comment Share on other sites More sharing options...
dodik159357 0 Odesláno: 9. Srpen, 2012 Share Odesláno: 9. Srpen, 2012 hele lidi sem zacatecnik kde mam to vsetko co tam pise vlozit prosim vas ?? surne dekuji a jak to mam vlastne vkladat proc to neni naras v jednom ale rozdeleno do vic okenku ?? Link to comment Share on other sites More sharing options...
dodik159357 0 Odesláno: 9. Srpen, 2012 Share Odesláno: 9. Srpen, 2012 a jaky navod kde to mam vse vlozit pls ? Link to comment Share on other sites More sharing options...
MICHAL53Q 0 Odesláno: 9. Srpen, 2012 Share Odesláno: 9. Srpen, 2012 hele lidi sem zacatecnik kde mam to vsetko co tam pise vlozit prosim vas ?? surne dekuji a jak to mam vlastne vkladat proc to neni naras v jednom ale rozdeleno do vic okenku ?? a jaky navod kde to mam vse vlozit prosím ? preto aby si sa to naucil a pochopil a nestlacil len CTRL+C a CTRL+V a mas tam napisane co kam mas dat... Link to comment Share on other sites More sharing options...
dodik159357 0 Odesláno: 9. Srpen, 2012 Share Odesláno: 9. Srpen, 2012 jaaaj no dekuji ti moc ale hele toto nevim kam dat prve Kód: #define BARVA_SEDA 0xAFAFAFAA #define BARVA_BILA 0xEFEFF7AA Kód: forward PovolitAFK(playerid); forward KontrolaPozice(); Kód: new bool:AFK[MAX_PLAYERS]; new OldAFK[MAX_PLAYERS]; new UlozeneJmeno[MAX_PLAYERS][MAX_PLAYER_NAME]; new Float:SaveX[MAX_PLAYERS],Float:SaveY[MAX_PLAYERS],Float:SaveZ[MAX_PLAYERS]; Link to comment Share on other sites More sharing options...
MICHAL53Q 0 Odesláno: 9. Srpen, 2012 Share Odesláno: 9. Srpen, 2012 to daj hore pod #include #define BARVA_SEDA 0xAFAFAFAA #define BARVA_BILA 0xEFEFF7AA forward PovolitAFK(playerid); forward KontrolaPozice(); new bool:AFK[MAX_PLAYERS]; new OldAFK[MAX_PLAYERS]; new UlozeneJmeno[MAX_PLAYERS][MAX_PLAYER_NAME]; new Float:SaveX[MAX_PLAYERS],Float:SaveY[MAX_PLAYERS],Float:SaveZ[MAX_PLAYERS]; 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