Jump to content

LondoN eXtream

Membru
  • Posts

    641
  • Joined

  • Last visited

  • Days Won

    2

Everything posted by LondoN eXtream

  1. Dupa cum spune si titlul, am inceput un nou proiect. Caut 2-3 oameni care sa ma ajute sa-l continui (Necesita experienta PAWN / HTML) Proiectul a luat start azi, cei ce vor sa se inscrie sa lase un reply. Nu necesita investitii de bani. Toti colaboratorii vor primi addonsul si vor avea dreptul de al comercializa. Accept doar critici constructive, va rog nu dati reply-uri aiurea, gen "o piedere de timp" sau altele. Edit: As vrea si parerile voastre, anume, cu ar fi cu un sitem de puncte, xp, clase, puteri, s.a.m.d, pe scurt, ce ati adauga voi la acest addons.
  2. Descriere: Toti isi pot schimba echipa print /t, /ct, /spec Autor: dK^aLeX Download: #include <amxmodx> #include <amxmisc> #include <cstrike> new const Tag[] = "[^x04Transfer^x03]" new const g_MESSAGE[] = "Nu esti in viata!" public plugin_init() { register_plugin("Transfer 4 All", "1.0", "dK^aLeX") set_task( 60.0, "Transfer", .flags="b" ) register_clcmd("say /t", "Terorist") register_clcmd("say_team /t", "Terorist") register_clcmd("say /ct", "Counter") register_clcmd("say_team /ct", "Counter") register_clcmd("say /spec", "Spectator") register_clcmd("say_team /spec", "Spectator") } public Terorist(id) { if(!is_user_alive(id)) { return; client_print(id, print_chat, "%s %s", Tag, g_MESSAGE) } new name[32] get_user_name(id, name, 31) cs_set_user_team(id, CS_TEAM_T) client_print(0, print_chat, "%s Jucatorul %s s-a mutat la echipa ^x04Tero^x03", Tag, name) } public Counter(id) { if(!is_user_alive(id)) { return client_print(id, print_chat, "%s %s", Tag, g_MESSAGE) } new name[32] get_user_name(id, name, 31) cs_set_user_team(id, CS_TEAM_CT) client_print(0, print_chat, "%s Jucatorul %s s-a mutat la echipa ^x04Counter^x03", Tag, name) } public Spectator(id) { if(!is_user_alive(id)) { return; client_print(id, print_chat, "%s %s", Tag, g_MESSAGE) } new name[32] get_user_name(id, name, 31) cs_set_user_team(id, CS_TEAM_SPECTATOR) client_print(0, print_chat, "%s Jucatorul %s s-a mutat la echipa ^x04Spectator^x03", Tag, name) } public Transfer(id) { client_print(0, print_chat, "%s Scrie /t, /ct, /spec pentru a iti schimba echipa!", Tag) } /* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE *{\\ rtf1\\ ansi\\ ansicpg1252\\ deff0\\ deflang1033{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ f0\\ fs16 \n\\ par } */
  3. Multumesc @eL DrAg0, frumoasa lucrarea. TC va rog.
  4. Avatar/Semnatura/Logo/Banner/etc : Avatar Tema pozei / Stock-ul dorit ( obligatoriu ) : http://postimg.org/image/qu5q7cq6x/ Text principal : Alexandruuu Text secundar ( rangfort / www.rangfort.ro / nume server ) : CS.RANGFORT.RO Alte precizari : Sa fie ceva frumos
  5. Descriere: După cum scrie şi în titlu, am să vă arăt cum modificaţi corect dmg-ul făcut de o armă/cuţit/grenadă. Folosind această metodă nu o să primiţi erori în logs iar plugin-ul va funcţiona corect. Tutorial: 1. Pentru modificarea dmg-ul avem nevoie de modulul hamsandwich pe care trebuie să-l includem astfel: #include < hamsandwich > 2. Adăugăm un nou define şi anume: Code: #define IsPlayer(%0) ( 1 <= %0 <= g_iMaxPlayers ) 3. Acum trebuie să declarăm g_iMaxPlayers, adăugăm: Code: new g_iMaxPlayers Acum trecem la init ( plugin_init ) 1. Adăugăm în init următoarea linie: Code: g_iMaxPlayers = get_maxplayers ( ) Această linie înseamnă că g_iMaxPlayers caută numărul maxim de jucători după server. 2. Tot în init adăugăm următoarea funcţie ham: Code: RegisterHam ( Ham_TakeDamage, "player", "Player_TakeDamage" ) Ham_TakeDamage = funcţia care o cere modulul ham player = entitatea asupra căruia se exercită funcţia Player_TakeDamage = numele public-ului care acţionează Gata cu init-ul, mai urmează public-ul, codul dvs. trebuie să arate aşa până acum: Code: /* Plugin generated by AMXX-Studio */ #include < amxmodx > #include < hamsandwich > #define PLUGIN "Modificare Damage" #define VERSION "0.1" #define AUTHOR "hadesownage" #define IsPlayer(%0) ( 1 <= %0 <= g_iMaxPlayers ) new g_iMaxPlayers; public plugin_init ( ) { register_plugin ( PLUGIN, VERSION, AUTHOR ); g_iMaxPlayers = get_maxplayers ( ) RegisterHam ( Ham_TakeDamage, "player", "Player_TakeDamage" ); } Crearea public-ului: 1. Creeam public-ul cu 4 param-uri şi acelea fiind: iVictim - index-ul victimei iInflictor - cel care atacă iAttacker - index-ul atacatorului Float:fDamage - damage-ul făcut Începutul public-ului va arăta aşa: Code: public Player_TakeDamage ( iVictim, iInflictor, iAttacker, Float:fDamage ) { 2. Acum trebuie să adăugăm următoarea verificaţie: Code: if ( iInflictor == iAttacker && IsPlayer ( iAttacker ) ) { Aceasta verifică iInflictor este una şi aceeaşi cu atacatorul şi dacă atacatorul este un jucător nu o entitate oarecare. 3. În această verificare trebuie să adăugăm modificarea damage-ului, adăugăm următoarea linie: Code: SetHamParamFloat ( 4, fDamage * 2.0 ); 2.0 - cu cât se multiplică dmg-ul făcut de jucător. 2.0 - dublu. 3.0 - triplu. 4.0, 4.2, 4.5, 5.0 - şi tot aşa 4. După linia de sus adăugăm un return ca funcţia să se oprească: Code: return HAM_HANDLED; 5. După asta închidem verificaţia ( if-ul ) cu } si adăugăm: Code: return HAM_IGNORED; Asta a fost tot, codul dvs. trebuie să arate astfel: Code: /* Plugin generated by AMXX-Studio */ #include < amxmodx > #include < hamsandwich > #define PLUGIN "Modificare Damage" #define VERSION "0.1" #define AUTHOR "hadesownage" #define IsPlayer(%0) ( 1 <= %0 <= g_iMaxPlayers ) new g_iMaxPlayers; public plugin_init ( ) { register_plugin ( PLUGIN, VERSION, AUTHOR ); g_iMaxPlayers = get_maxplayers ( ) RegisterHam ( Ham_TakeDamage, "player", "Player_TakeDamage" ); } public Player_TakeDamage ( iVictim, iInflictor, iAttacker, Float:fDamage ) { if ( iInflictor == iAttacker && IsPlayer ( iAttacker ) ) { SetHamParamFloat ( 4, fDamage * 2.0 ); return HAM_HANDLED; } return HAM_IGNORED; } Dacă doriţi ca doar o singură armă să aibă dmg-ul modificat, atunci daţi click aici. Dacă întâlniti probleme puteţi să lăsaţi reply în topic şi o să vă răspund cât pot de repede. Exprimăţi recunoştinţa dacă ţi-a fost de folos acest tutorial ! Tutorial realizat de Hades
  6. #include amxmodx #include amxmisc #include fakemeta #include engine #include hamsandwitch new jumpznum[33] = 0, bool:dozjump[33] = false, cvar_jumps new g_iMaxPlayers #define IsPlayer(%0) ( 1 <= %0 <= g_iMaxPlayers ) #pragma semicolon 1 new const g_FILENAME[] = "VIP.cfg" public plugin_init() { g_iMaxPlayers = get_maxplayers ( ) cvar_jumps = register_cvar("amx_jumps", "2") RegisterHam ( Ham_TakeDamage, "player", "Player_TakeDamage" ); register_logevent( "RoundStart", 2, "1=Round_Start" ) } public RoundStart( iPlayer ) { if ( is_user_alive( iPlayer ) ) { cs_set_user_healt(iPlayer, 150) } } public client_putinserver(id) { jumpznum[id] = 0 dozjump[id] = false } public client_disconnect(id) { jumpznum[id] = 0 dozjump[id] = false } public client_PreThink(id) { if(!is_user_alive(id) return PLUGIN_CONTINUE new nzbut = get_user_button(id) new ozbut = get_user_oldbutton(id) if((nzbut & IN_JUMP) && !(get_entity_flags(id) & FL_ONGROUND) && !(ozbut & IN_JUMP)) { if (jumpznum[id] < get_pcvar_num(cvar_jumps)) { dozjump[id] = true jumpznum[id]++ return PLUGIN_CONTINUE } } if((nzbut & IN_JUMP) && (get_entity_flags(id) & FL_ONGROUND)) { jumpznum[id] = 0 return PLUGIN_CONTINUE } return PLUGIN_CONTINUE } public client_PostThink(id) { if(!is_user_alive(id) return PLUGIN_CONTINUE if(dozjump[id] == true) { new Float:vezlocityz[3] entity_get_vector(id,EV_VEC_velocity,vezlocityz) vezlocityz[2] = random_float(265.0,285.0) entity_set_vector(id,EV_VEC_velocity,vezlocityz) dozjump[id] = false return PLUGIN_CONTINUE } return PLUGIN_CONTINUE } public Player_TakeDamage ( iVictim, iInflictor, iAttacker, Float:fDamage ) { if ( iInflictor == iAttacker && IsPlayer ( iAttacker ) ) { SetHamParamFloat ( 4, fDamage * 2.0 ); return HAM_HANDLED; } return HAM_IGNORED; } public plugin_cfg() { new ConfigsDir[64] get_configsdir(ConfigsDir, sizeof ConfigsDir -1) server_cmd("exec %s/%s", ConfigsDir, g_FILENAME) } /* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE *{\\ rtf1\\ ansi\\ ansicpg1252\\ deff0\\ deflang1033{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ f0\\ fs16 \n\\ par } */
  7. In acest tutorial vom invata cum creem si folosim un cvar! Pentru inceput facem o variabila. new plugin_on Adaugam la Initializare public plugin_init() { plugin_on = register_cvar("amx_on", "1") // 1 - Activat | 0 - Dezactivat } Acum creem un public dorit de noi public client_connect(id) { if(get_pcvar_num(plugin_on) == 0) { return; // Daca cvar-ul este setat pe 0 nu se va intampla nimic. plugin_on reprezinta variabila } client_cmd(id, "name CVAR TEST!") }
  8. In acest tutorial va voi invata cum sa creati un prefix, pentru a nu trebui sa rascoliti tot pluginul si sa schimbati de fiecare data TAG-l respectiv Pentru inceput creem o variabila constanta cu TAG-ul dorit. new const g_PREFIX[] = "[CS]" Unde este [CS] inlocuiti cu ce vreti voi. Acum ne putem juca cu el. #include amxmodx new const g_PREFIX[] = "[CS]" //TAG public plugin_init() { set_task(60.0, "PrintTAG", .flags="b") } public PrintTAG(id) { client_print(id, print_chat, "[%s] Primul meu TAG!", g_PREFIX) // unde este %s ii va printa tag-ul ales de voi, in cazul meu CS }
  9. http://rangfort.ro/forum/index.php?/topic/507-addons-respawn-default-amxmodx-182/
  10. Add alex.alex0201, vorbim pe privat, iar Silent walk, nu prea ai cum sa pui )
  11. Fii mai explicit . Ori vrei sa il puna la spec ori sa continue jocu?
  12. Scuzati ca ma bag, dar e tepar, am avut multe mesaje referitoare ca e tepar, de la oameni mari precum Fantasy1, Hattrick, Alex, Gabryel, Hades, Aragon, Advendex...
  13. Sau incearca pluginul lui hattrick, fakefull face lag #include amxmodx #include fakemeta new const g_Names[][]= { "NUME BOT", "VIP? ID", "NR 1 ZM MOD", "ZMOUT - ZM" }; new Array:g_Messages; new g_Handler; new g_Query[256]; public plugin_init() { new a = fopen("z_out_hud_advertisements.ini", "r"); g_Handler = CreateHudSyncObj(); g_Messages = ArrayCreate(512); set_task( 15.0, "TaskManageBots", .flags="b" ); if (a) { new Line[512]; while (!feof(a)) { fgets(a, Line, sizeof(Line) - 1); trim(Line); if (Line[0]) { while(replace(Line, sizeof(Line)-1, "\n", "^n")){} ArrayPushString(g_Messages, Line); } } fclose(a); } else log_amx("Failed to open z_out_advertisements.ini file!"); if (ArraySize(g_Messages)) { set_task(30.0, "TaskAvertise", .flags = "b"); } } new g_Bot[33], g_BotsCount; public TaskManageBots(){ static PlayersNum; PlayersNum = get_playersnum( 1 ); if( PlayersNum < get_maxplayers() - 1 && g_BotsCount < 3 ) { CreateBot(); } else if( PlayersNum > get_maxplayers() - 1 && g_BotsCount ) { RemoveBot(); }} public client_disconnect(i) { if( g_Bot[ i ] ) { g_Bot[ i ] = 0, g_BotsCount -- ; } } RemoveBot(){ static i; for( i = 1; i <= get_maxplayers(); i++ ) { if( g_Bot[ i ] ) { server_cmd( "kick #%d", get_user_userid( i ) );break; }}} CreateBot(){ static Bot; formatex( g_Query, 255, !random_num(0,1)?"%s (%c%c)":"%s - %c%c",g_Names[random_num(0,sizeof(g_Names)-1)],random_num('A','Z'),random_num('A','Z') );Bot = engfunc( EngFunc_CreateFakeClient, g_Query ); if( Bot > 0 &&pev_valid(Bot)) { dllfunc(MetaFunc_CallGameEntity,"player",Bot); set_pev(Bot,pev_flags,FL_FAKECLIENT); set_pev(Bot, pev_model, ""); set_pev(Bot, pev_viewmodel2, ""); set_pev(Bot, pev_modelindex, 0); set_pev(Bot, pev_renderfx, kRenderFxNone); set_pev(Bot, pev_rendermode, kRenderTransAlpha); set_pev(Bot, pev_renderamt, 0.0); set_pdata_int(Bot,114,0); message_begin(MSG_ALL,get_user_msgid("TeamInfo")); write_byte(Bot); write_string("UNASSIGNED"); message_end(); g_Bot[Bot]=1; g_BotsCount++; } } public TaskAvertise() { static a,msg[512]; for (a = 1; a <= get_maxplayers(); a++) { if (is_user_connected(a) && !is_user_bot(a) && !is_user_hltv(a)) { set_hudmessage(random_num(0, 255), random_num(0, 255), random_num(0, 255), -1.0, 0.0777, random_num(0, 2), random_float(0.7, 0.9), 12.0, random_float(0.37, 0.4), random_float(0.37, 0.4), 4); ArrayGetString(g_Messages,random_num(0,ArraySize(g_Messages)-1),msg,511); ShowSyncHudMsg(a, g_Handler, msg);
  14. Descriere: Addons Classic facut de mine, update la pluginuri. Autor: dK^aLeX Versiune: 1.0 Pluginuri: Download: Click Addons facut de dK^aLeX pentru CS.RANGFORT.RO [ @SiLviu ]
  15. In acest tutorial va voi invata cum sa executam comenzi asupra jucatorilor.. 1. Creem un public. public ComenziClient( id ) { punem cu ( id ) , pentru a se executa fiecarui client in parte. Si punem in public sub forma: client_cmd( id, "comanda" ) client_cmd( id, "say Executarea comenzilor asupra clientului." ) } Cam atata si cu acest tutorial,
  16. In acest tutorial va voi invata cum sa aflati numele/IP-ul jucatorului Prima data creez 2 variabile statice. static name[32], ip[16] //sau le mai putem scrie si asa: static name[32] static ip[16] Acum , va intrebati cum vom afla numele si ip-ul? Vom folosi functia get_user get_user_name( id, name, charsmax( name ) ) // Am aflat numele jucatorului. get_user_ip( id, name, charsmax( ip ), 1 ) // Am aflat IP-ul jucatorului. Acum ne putem juca cu el, facand ce vrem noi. Exemplu: client_print(0, print_chat, "Jucatorul %s cu ip %s s-a conectat", name, ip ) %s = reprezinta numele, care se afla prin charsmax ( name ) %s [al doilea] = repreznta ip-ul , care se afla prin charsmax ( ip ), 1. Sper ca va fost de ajutor
  17. Atunci cand se inregistreaza un public, nu neaparat, trebuie sa punem ( id, level , cid ) Un exemplu: public Server( id, level, cid ) { if ( !cmd_access( id, level, cid, 1 ) ) { return; } } Acum o sa ca explic ce face fiecare in parte. !cmd_acces - In fata lui este adaugat if, adica daca clientul nu are accesul sa zicem la BAN nu va putea executa comanda. id - reprezinta ID-ul adminului, cel care executa comada. level - reprezinta levelul de admin, ex ADMIN_LEVEL_H cid - cid este deseori folosit pentru a opri jucatori sau admini ce nu au access la a folosi comanda x. 1 - inseamna ca comanda are 1 parametru. Ce este acela? Sa ziceam ca avem amx_ss <nume>. <nume> este un parametru, iar 1 se schimba in functie de parametri. { return; = Daca nu are acces revine la plugin. Cam acesta a fost tutorialul.
  18. Nume: Alex Nick: dK^aLeX Varsta: 12 Motiv: Iubesc comunitatea si sunt priceput in PAWN. Adresa de contact: alex.alex0201@yahoo.com Timp alocat forumului: 3-4 ore. [Mentionez ca am scoala] Ce sectiune doresti sa moderezi?: AMXMODX. De ce ai ales aceste sectiuni?: Deoarece sunt priceput in PAWN. De ce doresti sa moderezi in aceasta comunitate?: Nu exista un motiv anume, doar imi place. Ai mai moderat IPB?: Da Ce intelegi prin "post hunt"?: Posturi facute aiurea, fara sens , gen gg buna treaba etc.. Ce intelegi prin dublu post? : Posturi unele dupa altele. Ce intelegi prin WAREZ?: Continut piratat. Ce inseamna NTFW: Not Safe For Work [+18] Care este diferenta dintre post hunt si offtopic?: Vanatoare de posturi, abatere de la subiect. Ce planuri ai sa sporesti activitatea membrilor ?: Posturi utile.
  19. Descriere: Acest plugin face poze jucatorilor. Autor: dK^aLeX Versiune: 0.1c Download Click Here Instalare: Fisierul ss_new0.1c.sma = > addons/amxmodx/scripting Fisierul ss_new0.1c.amxx = > addons/amxmodx/plugins Mergem in addons/amxmodx/configs/plugins.ini si adaugam: ss_new0.1c.amxx
  20. Avatar/Semnatura/Logo/Banner/etc : Avatar Tema pozei / Stock-ul dorit ( obligatoriu ) : http://s11.postimg.org/64rpncfsz/le_fashion_blog_top_knot_tan_textured_knit_sweat.jpg Text principal : Alexandruuuu # Text secundar ( rangfort / www.rangfort.ro / nume server ) : # RANGFORT # Alte precizari : Putin blur pe cel secudnar, si daca puteti face in AF, ceva in gen cum are Silviu.
  21. Astazi va voi invata cum sa va creati propiile pluginuri 1. Vom pune librariile #include <amxmodx> 2. Vom inregistra variabile, daca vrem sa fie. new const szPrefix = "Redirect" new const szServer = "connect boost.dyndssrs.ro" // exemplu Initiem pluginul public plugin_init() { register_plugin("PLUGIN", "VERSION", "AUTHOR") } Acum vom face cea ce vrei construind Publicuri public client_connect(id) Am inregistrat publicul, care sa efectueaza playeriilor cand se conecteaza Acum daca vrei, ii punem afla si numele new szName[32] get_user_name(id, szName, 31) Introducem restul comenzilor pe care vrem sa le executam jucatorului client_cmd(id, "%s", szServer) server_print("[%s] Client %s redirected to %d!", szPrefix, szName, szServer) }
×
×
  • Create New...