Ez a szekció lehetővé teszi a felhasználó által írt összes hozzászólás megtekintését. Vedd figyelembe, hogy csak azokba a fórumokba írt hozzászólásokat látod, amelyekhez hozzáférésed van. 61
Archívum / SA-MP.hu - "Közös erõvel"« Dátum: 2011. október 28. - 21:11:15 »
@Mambo
A terv meg fog valósulni, hogy életben marad-e, az már a két fórum együttes közösségén áll, vagy bukik. @Többiek Köszönjük a támogató jellegû hozzászólásokat, valamint a felkínált segítségeket! 62
SA-MP: Szerverfejlesztés / IP szûrõ« Dátum: 2011. szeptember 02. - 19:58:50 »
Írtam egy függvényt, mellyel a szövegen belül elvileg elég jól meg lehet találni az IP helyét. Mellékeltem egy szkriptet is.
ipfind Paraméterek:
Visszatérés:
stock ipfind(const string[], start = 0, &iplen = -1) Szkript: [pawn]// This is a comment // uncomment the line below if you want to write a filterscript //#define FILTERSCRIPT #include <a_samp> // ipfind függvényt ide másold stock replacestring(source[], string1[], string2[]) { new pos; pos = strfind(source, string1); while(pos != -1) { strdel(source, pos, pos + strlen(string1)); strins(source, string2, pos, strlen(string2)); pos = strfind(source, string1); } return 1; } public OnPlayerText(playerid, text[]) { new len, pos = ipfind(text, 0, len); if(pos > -1) { new ip[32]; strmid(ip, text, pos, pos + len, sizeof(ip)); replacestring(text, ip, \"[REKLÁM NINCS]\"); } return 1; }[/pawn] 63
SA-MP: Szerverfejlesztés / Fegyverek letiltása/engedélyezése« Dátum: 2011. augusztus 25. - 11:46:21 »Idézetet írta: Roni date=1314265538\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"10871\" data-ipsquote-contentclass=\"forums_Topic Jó lett, de kár hogy Idõzítõt használ.Nem muszáj az automatikus ellenõrzést használni. 64
SA-MP: Szerverfejlesztés / Fegyverek letiltása/engedélyezése« Dátum: 2011. augusztus 25. - 11:43:26 »
Fegyverek :: engedélyezése / tiltása
Leírás Ezekkel a függvényekkel lehetõségünk nyílik bizonyos fegyvereket engedélyezni / letiltani. Függvények:
Fegyverek táblázata http://wiki.sa-mp.com/wiki/Weapons Letöltés http://pastebin.com/3kKbcVTp 65
Archívum / Olcsó, megbízható tárhely kerestetik!« Dátum: 2011. augusztus 24. - 23:53:43 »
A magyar piacon ekkora értékben nem sok sikerrel lehet valóban megbízható hosztingot találni.
66
SA-MP: Szerverfejlesztés / Kapu kezelõ« Dátum: 2011. augusztus 24. - 23:47:40 »obo[T]\" post=\"169634\" timestamp=\"1314221308\"] 67
SA-MP: Szerverfejlesztés / Night-Admin« Dátum: 2011. augusztus 24. - 14:45:12 » :: Night-Admin ::
Ezt a szkriptet eredetileg a Play 1 Night 3 rendezvényre készítettem, de az egyeztetések után végül nem került az alkalmazására sor, tehát úgy döntöttem, hogy akkor inkább közkinccsé teszem. Szerkesztés: Mégis be fog kerülni, de egy újabb, jobb verzió. Parancsok Mielõtt bármelyik parancsot használod, be kell jelentkezned! (/rcon login jelszód)
Letöltés http://solidfiles.com/d/cf113/ 68
SA-MP: Szerverfejlesztés / Kapu kezelõ« Dátum: 2011. augusztus 24. - 14:22:58 »
Kapu kezelõ :: béta
A rendszer lényege alapvetõen az, hogy egyszerûen hozzunk létre kapukat. 1. Elsõként is, ha akarjuk, akkor kapcsoljuk be az automatikus kapukezelõt: Gate_Init(); Ha ez nem történik meg, akkor sincsen baj, hiszen a rendszert lehet használni, csak a kapuk ki/be csukását nekünk kell megoldani. Így akár ez paranccsal is mûködhet majd. 2. A legfontosabb lépés pedig, hogy hogyan is hozzunk létre kapukat. Erre két függvény van. Gate_New(): Itt meg lehet adni, hogy a kapu nyitott/zárt állapotban legyen, mekkora legyen a választávolsága (azaz mekkora távolságon belül nyíljon ki valakinek), és a mozgás sebességét. Gate_Create(): Az elõzõ függvény egyszerûsített változata. Ha akarjuk, megadhatjuk a sebességet is a koordináták elõtt, de elég csupán a koordinátákat megadni. Minden létrehozott kapunak egy egyedi azonosítószáma lesz, amivel a késõbbiekben hivatkozhatunk rá. 3. A rendszer számtalan más funkcióval is rendelkezik, ezek csupán a létrehozás utáni adatmódosítást szolgálják. Ezek közül kiemelendõ: Gate_Open() - A kapu kinyitása Gate_Close() - A kapu bezárása Gate_IsOpened() - A kapu nyitottságának megállapítása A zártság megállapítása: [PAWN]#define Gate_IsClosed(%1) if(!Gate_IsOpened(%1))[/PAWN] Illetve, ha idõközben a kapu automatikusságát ki akarjuk kapcsolni: Gate_ToggleAutoResponse(mygate, 0); Ha ez megtörtént, akkor a kapu nem fog magától kinyílni. Ilyenkor kinyithatjuk például paranccsal is: [PAWN]COMMAND:open(playerid) { Gate_Open(mygate); return 1; }[/PAWN] Itt is lefuttathatjuk az ellenõrzést, mert az magától nem fog lefutni. Például: [PAWN]COMMAND:open(playerid) { if(funcidx(\"OnPlayerOpenGate\")) { if(!CallRemoteFunction(\"OnPlayerOpenGate\", \"ii\", playerid, mygate)) return 0; } Gate_Open(mygate); return 1; }[/PAWN] Az OnPlayerOpenGate() függvény lehetõvé teszi, hogy mielõtt kinyílik egy kapu (egy adott játékosnak), meg tudjuk akadályozni a kinyílását. Ha nem kell a kapu, akkor törölhetjuk: [PAWN]Gate_Remove(mygate);[/PAWN] Röviden ennyi. A rendszer még fejlesztés alatt áll... Teszt szkript: [PAWN]#include <a_samp> #include <gate> #include <zcmd> // Define coordinates #define CLOSE -1515.4235, -263.9250, 6.0117 #define OPEN -1515.4387, -263.9299, 1.5194 new mygate = 0; public OnFilterScriptInit() { Gate_Init(); mygate = Gate_Create(971, OPEN, CLOSE); return 1; } public OnFilterScriptExit() { Gate_Remove(mygate); return 1; } // Gate only for team \'50\' public OnPlayerOpenGate(playerid, gateid) { if(GetPlayerTeam(playerid) != 50) return 0; // Don\'t open the gate return 1; } // Team changer command\'s COMMAND:team(playerid) { SetPlayerTeam(playerid, 50); return 1; } COMMAND:team2(playerid) { SetPlayerTeam(playerid, NO_TEAM); return 1; }[/PAWN] forward OnGateOpen(gateid); - Amikor a kapu kinyílik forward OnGateClose(gateid); - Amikor a kapu záródik forward OnPlayerOpenGate(playerid, gateid); - Mielõtt a kapu kinyílik egy játékosnak Függvények: [PAWN]Gate_IsActive(gateid) Gate_IsValid(gateid) Gate_SetResponseDistance(gateid, Float:dis) Gate_GetResponseDistance(gateid, &Float:dis) Gate_SetSpeed(gateid, Float:speed) Gate_GetSpeed(gateid, &Float:speed) Gate_SetModel(gateid, modelid) Gate_GetModel(gateid) Gate_ToggleAutoResponse(gateid, toggle) Gate_IsAutoResponse(gateid) Gate_GetObjectID(gateid) Gate_IsOpened(gateid) Gate_SetRot(gateid, Float:rx, Float:ry, Float:rz) Gate_GetRot(gateid, &Float:rx, &Float:ry, &Float:rz) Gate_SetOpenPos(gateid, Float:x, Float:y, Float:z) Gate_SetClosePos(gateid, Float:x, Float:y, Float:z) Gate_GetClosePos(gateid, &Float:x, &Float:y, &Float:z) Gate_Open(gateid) Gate_Close(gateid) Gate_New(modelid, open, autores, Float:resdis, Float:speed, Float:open_x, Float:open_y, Float:open_z, Float:close_x, Float:close_y, Float:close_z, Float:rot_x = 0.0, Float:rot_y = 0.0, Float:rot_z = 0.0) Gate_Create(modelid, Float:open_x, Float:open_y, Float:open_z, Float:close_x, Float:close_y, Float:close_z, Float:rot_x = 0.0, Float:rot_y = 0.0, Float:rot_z = 0.0) Gate_Remove(gateid) Gate_Init()[/PAWN] Letöltés: http://solidfiles.com/d/a4a3f/ Hibát látsz? Ötleted van? Írd meg! Köszönet:
69
SA-MP: Szerverfejlesztés / Tánc menü« Dátum: 2011. augusztus 24. - 13:59:32 »
Mindenki írja, hogy milyen jó lett, de úgy látom, ez csak beszéd.
Ugyanis a két szóban forgó párbeszédpanel típus sem egyezik [pawn]#define DIALOG_DANCE 3453 CMD:dances(playerid,params[]) { ShowPlayerDialog(playerid, DIALOG_DANCE, DIALOG_STYLE_LIST, \"Melyik táncot akarod?\",\" Dance 1\\n Dance 2\\n Dance 3\\n Dance 4\", \"Kiválaszt\", \"Mégse\"); return 1; } public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { if(dialogid == DIALOG_DANCE && response) { new danceid = listitem + 5; SetPlayerSpecialAction(playerid,danceid); return 1; } return 1; }[/pawn] Egyébként még annyira felhívnám a készítõ figyelmét, hogy ez párbeszédpanel (dialógus), a menü teljesen más. A menü így néz ki: Üdv 70
SA-MP: Szerverfejlesztés / Teleport kezelõ 3.0 [5. kiadás]« Dátum: 2011. augusztus 23. - 18:03:15 »Idézetet írta: hpeter94 date=1314115327\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"10604\" data-ipsquote-contentclass=\"forums_Topic Remek rendszer Milyen licenc alatt van? mert lehet felhasználnám egykét részétHagyd meg a készítõ nevét, és fejlessz licensz alatt. 71
SA-MP: Szerverfejlesztés / Teleport kezelõ 3.0 [5. kiadás]« Dátum: 2011. augusztus 23. - 17:57:01 »
Frissítve.
Újítások a legutóbbi kiadás óta:
72
SA-MP: Szerverfejlesztés / Teleport kezelõ 3.0 [5. kiadás]« Dátum: 2011. augusztus 18. - 21:21:13 »
Fontos frissítést tettem a 2. kiadásba. Kérem, mindenki frissítse!
73
SA-MP: Szerverfejlesztés / Teleport kezelõ 3.0 [5. kiadás]« Dátum: 2011. augusztus 18. - 18:00:34 » :: Teleport kezelõ 3.0 ::
Bevezetõ Ezt a projektet még 2009 végén kezdtem, de még elég hiányos volt akkor. Az évek során közel 50 függvényre bõvült. A lényeg viszont nem változott: kezeljük a teleportokat egyszerûen! Ezúttal egy komplett szervercsomagot készítettem, hogy a lehetõ legkönnyebb legyen kiigazodni a rendszeren. Az új verzió a korábbiakhoz képest rengeteg újítást / javítást tartalmaz, mint például:
Fontos, hogy ezzel a rendszerrel kis logikával a teleportok összes fajtája (pl. dm) létrehozható. A teleporton rengeteg tulajdonság beállítható, például:
És folytathatnám a sort. Fontos:
Egy szemléltetés, hogy mennyire egyszerû: CreateTeleport(\"SF\",\"/sf\",-1495.9395,-141.1882,15.0702,315.0674); Parancs a teleportok lementésére [pawn]CMD:saveteleport(playerid, params[]) { #if !defined MAX_TELEPORT_NAMELEN #define MAX_TELEPORT_NAMELEN 32 #endif #if !defined MAX_TELEPORT_CMDLEN #define MAX_TELEPORT_CMDLEN 32 #endif new name[MAX_TELEPORT_NAMELEN],command[MAX_TELEPORT_CMDLEN]; if(sscanf(params, \"s[32]s[32]\", name, command)) return SendClientMessage(playerid,0xFFFFFFFF, \"Use: /saveteleport [name][command]\"); new File:savedteleports = fopen(\"savedteleports.txt\", io_write); if(savedteleports) { new Float:x, Float:y, Float:z, Float:angle; if(IsPlayerInAnyVehicle(playerid)) { new vehicleid = GetPlayerVehicleID(playerid); GetVehiclePos(vehicleid,x,y,z); GetVehicleZAngle(vehicleid,angle); } else { GetPlayerPos(playerid,x,y,z); GetPlayerFacingAngle(playerid,angle); } new formatstring[256]; format(formatstring, 256, \"CreateTeleport(\\\"%s\\\", \\\"%s\\\", %.3f, %.3f, %.3f, %.3f);\\r\\n\", name, command, x, y, z, angle); fwrite(savedteleports, formatstring); fclose(savedteleports); SendClientMessage(playerid,0xFFFFFFFF, \"Teleport saved to savedteleports.txt (in your scriptfiles folder).\"); } return 1; }[/pawn] 3 dimenziós szöveg formázása Ez a funkció a legújabb verzióban került hozzáadásra. Segítségével könnyedén megformázhatjuk a teleport helyén megjelenõ 3 dimenziós szöveget, és ezzel is még egyedibbé tehetjük a teleportokat. A szövegbe az alábbiakat kell beleírni, és azok át fognak változni a megfelelõ dologra: {NAME} - A teleport neve {COMMAND} - A teleport parancsa {PRICE} - A teleport ára {NEWLINE} - Új sor kezdése {RRGGBB}(samp) - Szöveg átszínezése Például: [pawn]public OnFilterScriptInit() { new teleportid = CreateTeleport(\"LS\",\"/ls\",1933.2625,-2407.8191,14.2618,183.6625); Teleport_Set3DTextFormat(teleportid, \"{0522FF}Name: {FFFFFF}{NAME}{NEWLINE}{0522FF}Command: {FFFFFF}{COMMAND}{NEWLINE}{0522FF}Price: {FFFFFF}{PRICE}\"); return 1; }[/pawn] Ennek az eredménye ez lesz: Letöltés http://gtaforum.hu/files/teleportv3_rel2.rar Frissítés (5. kiadásra): http://solidfiles.com/d/abb0f/ Weboldal http://gtaforum.hu/load/teleport (hamarosan frissítem) A weboldalon egyszerûen generálható teleport. Leírás Leírás hamarosan. Köszönet
74
SA-MP: Szerverfejlesztés / Teleport kezelõ« Dátum: 2011. augusztus 01. - 21:41:06 »
Elkezdtem az érdemi munkát is az új verziót illetõen, reményeim szerint pár nap, és a teljes verziót kiadom. Ami érinti a weboldalt is
75
Fórum Archívum (Témák/Fórumok) / A GTAforum.hu megmutatta rendes oldalát.« Dátum: 2011. július 14. - 12:26:56 »
Tévesnek, és erõsen hírnévrontónak tartom már magát a címet. Hogy miért? A gtaforum.hu egy egész közösséget jelöl meg, amelynek úgy a 15-20%-a ismerhet téged. Éppen ezért egy admin (napló alapján Rudi) tevékenységének elítélése miatt nem kell a fórumot is elítélned. Egyébként a választ sose egy másik fórumtól kérd, hamarabb találnál választ, ha felvennél, vagy felkeresnél engem, és megbeszélnénk, normális körülmények között
Amúgy ha már ennyire jártas vagy, és ennyire mindennel egy kalap alá tudod venni a fórumot, akkor te bizonyára tudhatnád, hogy Y2K-nak nincs kitiltási joga. És ezt a megverem, megrángatom, megkeresem, van róla képem kiteszem, hasonló szintet is kezdem óvodásnak tartani, mert ha valaki nem tud valamit (azonnal) elérni, akkor ezzel jön. Hagyjuk már. Épp ezért nem lesz a föld soha demokratikus, mert egy pillanatnyi vereség már ekkora felháborodást tud kelteni valakibe. Köszönöm! |