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.
Témák - RaySurenos
Oldalak: [1]
1
« Dátum: 2020. január 02. - 12:07:22 »
2
« Dátum: 2020. január 02. - 12:07:22 »
3
« Dátum: 2015. december 12. - 21:27:55 »
Kérdés adott. Lehetséges ilyen?
4
« Dátum: 2014. november 07. - 23:19:23 »
5
« Dátum: 2014. március 07. - 16:33:29 »
Helló. Pont Rendszer, hozzátartozó Jutalmakkal. A pontokat lementi a rendszer. Pontokat ölésért lehet szerezni. (+1db/ölés) Halálkor -1 pont, hogy azért ne legyen olyan egyszerû. Nem teszteltem. Készítõ: Ray Követelmények: Dini ZCMD Színkódok, include #include <dini> #include <a_samp> #include <sscanf2> #define COLOR_LIGHTRED 0xFF6347AA #define COLOR_LIGHTBLUE 0x33CCFFAA #define COLOR_LIGHTGREEN 0x9ACD32AA #define COLOR_ORANGE 0xFF8C00AA #define COLOR_LIMEGREEN 0x32CD32AA #define COLOR_YELLOW 0xFFFF00AA #define vpiros 0xFF6347AA #define COLOR_SPRINGGREEN 0x00FF7FAA Lementés,egyéb: enum pdata { Pont,//pontok száma } Belépéskor adatok ellenõrzése public OnPlayerConnect(playerid) { new string[128],name[MAX_PLAYER_NAME]; GetPlayerName(playerid,name,sizeof(name)); format(string,sizeof(string),\"%s.ini\",name); if(dini_Exists(string)) { PlayerInfo[playerid][Pont] = dini_Int(string,\"Pont\"); } else { dini_Create(string); } return 1; } Kilépéskor adatok lementése public OnPlayerDisconnect(playerid, reason) { new string[128],name[MAX_PLAYER_NAME]; GetPlayerName(playerid,name,sizeof(name)); format(string,sizeof(string),\"%s.ini\",name); if(dini_Exists(string)) { dini_IntSet(\"Pont\", PlayerInfo[playerid][Pont]); } return 1; } Parancsok: /pont - Pont Infók CMD:pont(playerid, params[]) { SendClientMessage(playerid, COLOR_YELLOW, \"================[ Pont Jutalmak ]================\"); SendClientMessage(playerid, COLOR_LIMEGREEN ,\"[50db]Új chatszín a játékosnak.\"); SendClientMessage(playerid, COLOR_LIMEGREEN, \"[100db]Letud hívni NRG-t (/nrg).\"); SendClientMessage(playerid, COLOR_LIMEGREEN, \"[150db]Fegyvereket tud lehívni (/pack).\"); return 1; } /pack - 150db ponttól, fegyverek lehívása, 2 féle fegyverpack. CMD:pack(playerid, params[]) { if(PlayerInfo[playerid][Pont] >= 150) { GivePlayerWeapon(playerid, 29, 1000); GivePlayerWeapon(playerid, 31, 1000); GivePlayerWeapon(playerid, 34, 1000); GivePlayerWeapon(playerid, 27, 1000); SendClientMessage(playerid, COLOR_LIGHTGREEN, \"[PACK] Combat, M4, Mp5, Sniper.\"); } else { SendClientMessage(playerid, COLOR_LIGHTRED, \"Nincs elég pontod!\"); } return 1; } /nrg - 100db ponttól a játékos letud hozni egy NRG-t CMD:nrg(playerid, params[]) { if(PlayerInfo[playerid][Pont] >= 100) { new vehicleid; new Float:X,Float:Y,Float:Z,Float:Angle; GetPlayerPos(playerid,X,Y,Z); GetPlayerFacingAngle(playerid,Angle); GetPlayerVehicleID(playerid); vehicleid = CreateVehicle(522,X,Y,Z,Angle,-1,-1,600); PutPlayerInVehicle(playerid, vehicleid, 0); SendClientMessage(playerid, COLOR_SPRINGGREEN, \"Sikeresen lehívtad az NRG-500-ast!\"); } else { SendClientMessage(playerid, vpiros, \"Nincs elég pontod!\"); } return 1; } 50db ponttól, új chatszín a játékosnak public OnPlayerText(playerid, text[]) { if(PlayerInfo[playerid][Pont] >= 50) { new textv2[128], name[MAX_PLAYER_NAME]; GetPlayerName(playerid, name, sizeof (name)); format(textv2, sizeof (textv2), \"(%d) %s: %s\", playerid, name, text); SendClientMessageToAll(COLOR_ORANGE, textv2); SetPlayerChatBubble(playerid, textv2, COLOR_ORANGE, 100.0, 10000); } else { new textv2[128], name[MAX_PLAYER_NAME]; GetPlayerName(playerid, name, sizeof (name)); format(textv2, sizeof (textv2), \"(%d) %s: %s\", playerid, name, text); SendClientMessageToAll(COLOR_LIGHTGREEN, textv2); SetPlayerChatBubble(playerid, textv2, COLOR_LIGHTGREEN, 100.0, 10000); } return 1; } Halálkor: (playerid) -1 pont, (killerid) +1 pont public OnPlayerDeath(playerid, killerid, reason) { SendDeathMessage(killerid, playerid, reason); PlayerInfo[playerid][Pont]--; PlayerInfo[killerid][Pont]++; SendClientMessage(playerid, COLOR_LIGHTBLUE, \"Meghaltál ezért csökkent 1-el a pontjaid száma!\"); SendClientMessage(killerid, COLOR_LIGHTBLUE, \"Kaptál +1 pontot!\"); GameTextForPlayer(killerid, \"~r~+1 pont\", 5000, 1); return 1; } Textdraw hozzá, hogy a player lássa mennyi pontja van. Igazából a onplayerupdate, nagyon laggoltat, timerrel érdemes megoldani. new Text:tdpontok; new pontszam[128]; public OnGameModeInit() { tdpontok = TextDrawCreate(498, 120, \"~r~Pontok: ~y~0\"); TextDrawBackgroundColor(tdpontok, 0x050505AA); TextDrawFont(tdpontok, 1); TextDrawLetterSize(tdpontok, 0.4, 1); TextDrawTextSize(tdpontok, 640, 480); TextDrawColor(tdpontok, 0x32CD32AA); TextDrawUseBox(tdpontok, 1); TextDrawBoxColor(tdpontok, 0x05050566); TextDrawSetOutline(tdpontok, 1); TextDrawSetProportional(tdpontok, 1); return 1; } public OnPlayerConnect(playerid) { format(pontszam, 128, \"~r~Pontok: ~y~%ddb\", PlayerInfo[playerid][Pont]); TextDrawSetString(tdpontok, pontszam); TextDrawShowForPlayer(playerid, tdpontok); return 1; } public OnPlayerDisconnect(playerid, reason) { TextDrawHideForPlayer(playerid, tdpontok); return 1; } public OnPlayerSpawn(playerid) { TextDrawShowForPlayer(playerid, tdpontok); return 1; } public OnPlayerUpdate(playerid) { new tdpontok2[128]; format(tdpontok2, 128, \"~r~Pontok: ~y~%ddb\", PlayerInfo[playerid][Pont]); TextDrawHideForPlayer(playerid,tdpontok); TextDrawSetString(tdpontok,tdpontok2); TextDrawShowForPlayer(playerid, tdpontok); return true; } Szóljatok hogyha valami gond van vele (error), lehet valamit kifelejtettem, nem volt idõm tesztelni.
6
« Dátum: 2014. március 07. - 15:35:07 »
Helló. Egyszerû Dialogos WeaponLekérõ. Számít hogy a játékosnak mennyi pénze van, ha nincs pénze akkor nem tud fegyvert vásárolni. Team DeathMatch szerverre van tervezve, szóval nincs megadva hogy hol kell lenni-e a játékosnak hogy használni tudja parancsot stb. Nem teszteltem, szóval lehet hogy nem mûködik. Készítõ: Ray Színkódok: #define vpiros 0xFF6347AA #define vkek 0x33CCFFAA #define vzöld 0x9ACD32AA A mód elejére: #define bolt 100 Maga a Dialog: public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { if(dialogid == bolt) { if(response) { if(listitem == 0) { if(GetPlayerMoney(playerid) >= 1500) // megnézzük mennyi pénze van a játékosnak. { GivePlayerWeapon(playerid,31,150); // megadja a fegyvert hogyha van elegendõ pénze a játékosnak. SendClientMessage(playerid, vzöld, \"Megvetted 1500$-ért az alábbi fegyvert: M4! | TölténySzám: +150db\"); // ha megvette a fegyvert akkor a szöveg. GivePlayerMoney(playerid, GetPlayerMoney(playerid)-1500); // levonja a pénzt. } else { new formatpenz[128]; new szukseges = GetPlayerMoney(playerid)-1500 // Megnézi mennyi szükséges még hogy megvegye a fegyvert. Kivonja a játékosnak a pénzébõl a fegyver árát. (Pl. a játékosnak van 500$-ja, abból kivonva a fegyver árát 1000$-t kapunk. format(formatpenz, sizeof(formatpenz), \"Nincs elég pénzed! Szükséges még: %d$!\", szukseges); // formázzuk a formatpenzt SendClientMessage(playerid, vpiros, formatpenz); // elküldjük a játékosnak a msgt } } if(listitem == 1) { if(GetPlayerMoney(playerid) >= 1000) { GivePlayerWeapon(playerid,30,150); SendClientMessage(playerid, vzöld, \"Megvetted 1000$-ért az alábbi fegyvert: Ak47! | TölténySzám: +150db\"); GivePlayerMoney(playerid, GetPlayerMoney(playerid)-1000); } else { new formatpenz[128]; new szukseges = GetPlayerMoney(playerid)-1500 format(formatpenz, sizeof(formatpenz), \"Nincs elég pénzed! Szükséges még: %d$!\", szukseges); SendClientMessage(playerid, vpiros, formatpenz); } } if(listitem == 2) { if(GetPlayerMoney(playerid) >= 800) { GivePlayerWeapon(playerid,29,150); SendClientMessage(playerid, vzöld, \"Megvetted 800$-ért az alábbi fegyvert: Mp5! | TölténySzám: +150db\"); GivePlayerMoney(playerid, GetPlayerMoney(playerid)-800); } else { new formatpenz[128]; new szukseges = GetPlayerMoney(playerid)-1500 format(formatpenz, sizeof(formatpenz), \"Nincs elég pénzed! Szükséges még: %d$!\", szukseges); SendClientMessage(playerid, vpiros, formatpenz); } } if(listitem == 3) { if(GetPlayerMoney(playerid) >= 800) { GivePlayerWeapon(playerid,33,30); SendClientMessage(playerid, vzöld, \"Megvetted 800$-ért az alábbi fegyvert: Rifle! | TölténySzám: +30db\"); GivePlayerMoney(playerid, GetPlayerMoney(playerid)-800); } else { new formatpenz[128]; new szukseges = GetPlayerMoney(playerid)-1500 format(formatpenz, sizeof(formatpenz), \"Nincs elég pénzed! Szükséges még: %d$!\", szukseges); SendClientMessage(playerid, vpiros, formatpenz); } } if(listitem == 4) { if(GetPlayerMoney(playerid) >= 1200) { GivePlayerWeapon(playerid,34,30); SendClientMessage(playerid, vzöld, \"Megvetted 1200$-ért az alábbi fegyvert: Sniper! | TölténySzám: +30db\"); GivePlayerMoney(playerid, GetPlayerMoney(playerid)-1200); } else { new formatpenz[128]; new szukseges = GetPlayerMoney(playerid)-1500 format(formatpenz, sizeof(formatpenz), \"Nincs elég pénzed! Szükséges még: %d$!\", szukseges); SendClientMessage(playerid, vpiros, formatpenz); } } if(listitem == 5) { if(GetPlayerMoney(playerid) >= 1000) { GivePlayerWeapon(playerid,27,50); SendClientMessage(playerid, vzöld, \"Megvetted 1000$-ért az alábbi fegyvert: Combat! | TölténySzám: +50db\"); GivePlayerMoney(playerid, GetPlayerMoney(playerid)-1000); } else { new formatpenz[128]; new szukseges = GetPlayerMoney(playerid)-1500 format(formatpenz, sizeof(formatpenz), \"Nincs elég pénzed! Szükséges még: %d$!\", szukseges); SendClientMessage(playerid, vpiros, formatpenz); } } if(listitem == 6) { if(GetPlayerMoney(playerid) >= 750) { GivePlayerWeapon(playerid,25,60); SendClientMessage(playerid, vzöld, \"Megvetted 750$-ért az alábbi fegyvert: Shotgun! | TölténySzám: +60db\"); GivePlayerMoney(playerid, GetPlayerMoney(playerid)-750); } else { new formatpenz[128]; new szukseges = GetPlayerMoney(playerid)-1500 format(formatpenz, sizeof(formatpenz), \"Nincs elég pénzed! Szükséges még: %d$!\", szukseges); SendClientMessage(playerid, vpiros, formatpenz); } } } } return 1; } A parancs, amivel elõhozza a dialogot a játékosnak: CMD:shop(playerid, params[]) { ShowPlayerDialog(playerid, bolt, DIALOG_STYLE_LIST, \"{8B4513}Shop - Bolt\", \"M4\\n\\ Ak47\\n\\ Mp5\\n\\ Rifle\\n\\ Sniper\\n\\ Combat\\n\\ Shotgun\", \"Megvesz\", \"Mégse\"); return 1; } Igen meglehetett volna rövidebben is írni, de direkt így csináltam, mert szerintem így átláthatóbb. (Amire gondolok: else, stb)
7
« Dátum: 2014. február 24. - 17:51:59 »
Az lenne a hibám, hogy amikor compileznem le a módot, ezt írja: error 025: function heading differs from prototype Ez a sor az: public OnPlayerGiveDamage(playerid, damagedid, Float:amount, weaponid, bodypart)
8
« Dátum: 2014. február 23. - 21:14:51 »
[gmod]Törölve[/gmod]
9
« Dátum: 2014. február 23. - 12:11:08 »
Nekem egy olyan problémám lenne, hogy amikor elindítom a szerveremet, akkor az fogad hogy: Run time error 19: \"File or function is not found\" Lehet az a gondja hogy nincs NetFrameworkom? Mert most raktam újra a gépemet, mindent lementettem a szerverrrõl, de még sem jó..
10
« Dátum: 2014. február 10. - 21:26:17 »
Ugye az a gond, hogy alapból le vannak korlátozva a kocsiknak a HP-juk 1000-re.
Valaki elmondaná nekem hogy ezt hogyan lehet felemelni?
11
« Dátum: 2014. február 09. - 22:47:21 »
Helló. A szerveremen nemrég írtam újra a lábon lövést, mert az elõzõ bugos volt. Így gondoltam megosztom veletek. Waros szerverekre szerintem jó, legalábbis mi haverokkal szoktuk tolni. ■ Kliens Követelmény: 0.3z ■ ■ Készítõ: Ray ■A mód elejére: #include <a_samp> #define BODY_PART_LEFT_LEG 7 #define BODY_PART_RIGHT_LEG 8 #define BODY_PART_HEAD 9 public OnPlayerGiveDamage(playerid, damagedid, Float:amount, weaponid, bodypart) { if(bodypart == BODY_PART_LEFT_LEG) { if(damagedid != INVALID_PLAYER_ID && IsPlayerConnected(damagedid)) { SendClientMessage(playerid, COLOR_LIGHTRED, \"Bal Lábon lõtted, ezért nem tud mozogni!\"); TogglePlayerControllable(damagedid, false); SetPlayerDrunkLevel(damagedid, 50000); ApplyAnimation(damagedid, \"SWEET\", \"Sweet_injuredloop\", 4.0, 1, 0, 0, 0, 0); SetPlayerArmedWeapon(damagedid, 0); SendClientMessage(damagedid, COLOR_LIGHTRED, \"Bal Lábon lõttek, ezért nem bírsz mozogni!\"); } } else if(bodypart == BODY_PART_RIGHT_LEG) { if(damagedid != INVALID_PLAYER_ID && IsPlayerConnected(damagedid)) { SendClientMessage(playerid, COLOR_LIGHTRED, \"Jobb lábon lõtted, ezért nem tud mozogni!\"); TogglePlayerControllable(damagedid, false); SetPlayerDrunkLevel(damagedid, 50000); ApplyAnimation(damagedid, \"SWEET\", \"Sweet_injuredloop\", 4.0, 1, 0, 0, 0, 0); SetPlayerArmedWeapon(damagedid, 0); SendClientMessage(damagedid, COLOR_LIGHTRED, \"Jobb Lábon lõttek, ezért nem bírsz mozogni!\"); } } else if(bodypart == BODY_PART_HEAD) { if(damagedid != INVALID_PLAYER_ID && IsPlayerConnected(damagedid)) { SendClientMessage(playerid, COLOR_LIGHTRED, \"Fejenlõtted, ezért súlyosan megsérült és kórházba került!\"); SendClientMessage(damagedid, COLOR_LIGHTRED, \"Fejenlõttek, ezért súlyosan megsérültél!\"); SetPlayerHealth(damagedid,0); } } return 1; } És hogyha meglõttek és segíteni akarsz magadon: if (strcmp(\"/segit\", cmdtext, true, 10) == 0) { TogglePlayerControllable(playerid, true); SetPlayerDrunkLevel(playerid, 0); ClearAnimations(playerid); SendClientMessage(playerid, 0x33CCFFAA, \"Segítettél magadon!\"); return 1; }
12
« Dátum: 2014. február 06. - 18:19:40 »
Van a szerveremen ölés számláló.
Azt nem lehet valahogy megoldani hogy valami toplista szerint állítsa õket?
Pl. legyen egy parancs hogy /toplista és kiírja hogy kinek van a legtöbb ölése.
Oldalak: [1]
|