Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

b0niek - zdjęcie

b0niek

Rejestracja: 27.09.2010
Aktualnie: Nieaktywny
Poza forum Ostatnio: 16.03.2014 22:22
*****

#237257 Speed Meter

Napisane przez b0niek w 15.04.2011 21:27

Proszę:
#include <amxmodx>
#include <fakemeta>

#define PLUGIN "Speedometer"
#define VERSION "1.2"
#define AUTHOR "AciD"

#define FREQ 0.1

new bool:plrSpeed[33]

new TaskEnt,SyncHud,showspeed,color, maxplayers, r, g, b

public plugin_init() {
	register_plugin(PLUGIN, VERSION, AUTHOR)
	register_cvar("AcidoX", "Speedometer 1.1", FCVAR_SERVER)
	register_forward(FM_Think, "Think")
	
	TaskEnt = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, "info_target"))	
	set_pev(TaskEnt, pev_classname, "speedometer_think")
	set_pev(TaskEnt, pev_nextthink, get_gametime() + 1.01)
	
	register_clcmd("say /speed", "toogleSpeed")
	
	showspeed = register_cvar("showspeed", "1")
	color = register_cvar("speed_colors", "255 255 255")
	
	SyncHud = CreateHudSyncObj()
	
	maxplayers = get_maxplayers()
	
	new colors[16], red[4], green[4], blue[4]
	get_pcvar_string(color, colors, sizeof colors - 1)
	parse(colors, red, 3, green, 3, blue, 3)
	r = str_to_num(red)
	g = str_to_num(green)
	b = str_to_num(blue)
}

public Think(ent)
{
	if(ent == TaskEnt) 
	{
		SpeedTask()
		set_pev(ent, pev_nextthink,  get_gametime() + FREQ)
	}
}

public client_putinserver(id)
{
	plrSpeed[id] = showspeed > 0 ? true : false
}

public toogleSpeed(id)
{
	plrSpeed[id] = plrSpeed[id] ? false : true
	return PLUGIN_HANDLED
}

SpeedTask()
{
	static i, target
	static Float:velocity[3]
	static Float:speed
	
	for(i=1; i<=maxplayers; i++)
	{
		if(!is_user_connected(i)) continue
		if(!plrSpeed[i]) continue
		
		target = pev(i, pev_iuser1) == 4 ? pev(i, pev_iuser2) : i
		pev(target, pev_velocity, velocity)

		speed = vector_length(velocity)
		
		set_hudmessage(r, g, b, -1.0, 0.7, 0, 0.0, FREQ, 0.01, 0.0)
		ShowSyncHudMsg(i, SyncHud, "%3.2f units/second", speed)
	}
}


Nie sprawdzałem bo nie mam aktualnie jak, ale twierdzę że działa.
  • +
  • -
  • 1


#207627 Co oznaczaja te logi?

Napisane przez b0niek w 20.01.2011 18:13

A co chcesz wiedzieć? Masz tam tylko jeden problem bo nie masz modułu codmod
L 01/20/2011 - 17:46:45: [AMXX] Plugin "cod_shop.amxx" failed to load: Plugin uses an unknown function (name "cod_set_perk_durability") - check your modules.ini.

Tu masz informacje o tym.A poza tym widzę tu zmianę mapy i groźby banem jakiemuś Kacprowi za ping.

  • +
  • -
  • 1


#206749 Zamiana cyfry na wyraz

Napisane przez b0niek w 17.01.2011 19:00

Przeczytaj sobie o enum
http://amxx.pl/troche-enum-t1699.html

Chyba o coś takiego Ci chodzi.
  • +
  • -
  • 1


#206684 Golden Ak 47

Napisane przez b0niek w 17.01.2011 16:26

Łap. Wystarczy dodanie prostego warunku if(is_user_admin(id))

Załączone pliki


  • +
  • -
  • 1


#206239 Afk Kiss, tylko na CT

Napisane przez b0niek w 15.01.2011 20:55

Masz w załączniku. Sprawdza najpierw czy gracz jest CT a dopiero potem czy jest afk czy nie.

Załączone pliki


  • +
  • -
  • 1


#206059 Cvary.

Napisane przez b0niek w 15.01.2011 12:52

Wchodzisz do katalogu configs, tworysz katalog maps i tam wrzucasz np. de_dust2.cfg ze wszystkimi cvarami które chcesz zmienić. Jeśli chcesz zmienić na de_dust to po prostu stworz plik de_dust.cfg i tam wstaw wszystkie cvary które chcesz mieć na de_dust
  • +
  • -
  • 1


#206055 Przerabianie klasy na premium

Napisane przez b0niek w 15.01.2011 12:42

Spoiler


Tu nie ma nic trudnego...
  • +
  • -
  • 2


#205613 Spolszczenie :(

Napisane przez b0niek w 13.01.2011 16:48

Aż takie to jest trudne?

Załączone pliki


  • +
  • -
  • 1


#205519 Błędne pokazanie menu.

Napisane przez b0niek w 13.01.2011 07:18

A dlaczego tworzysz wszystko w menu "InfoKlas" a potem chcesz pokazać menu o nazwie "MojeMenu"?Kopiowanie z innych pluginów trzeba przeprowadzać mądrze

/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <amxmisc>

#define PLUGIN "MenuKlas"
#define VERSION "1.0"
#define AUTHOR "author"

new MojeMenu,InfoKlas;

public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_clcmd("say /klasy","klasy")
register_clcmd("say /infoklas","klasy")
}
public klasy(id)
{
InfoKlas=menu_create("Wybierz Klase:","KlasyHandle");

menu_additem(InfoKlas,"Czarodziej");
menu_additem(InfoKlas,"Druid");
menu_additem(InfoKlas,"Paladyn");
menu_additem(InfoKlas,"Zabojca");
menu_additem(InfoKlas,"Nekromanta");
menu_additem(InfoKlas,"Barbarzynca");
menu_additem(InfoKlas,"Ninja");
menu_additem(InfoKlas,"Amazonka");
menu_additem(InfoKlas,"Andariel");
menu_additem(InfoKlas,"Hefasto");
menu_additem(InfoKlas,"Baal");
menu_additem(InfoKlas,"Diablo");
menu_additem(InfoKlas,"Durial");
menu_additem(InfoKlas,"Grinswold");
menu_additem(InfoKlas,"Fernando");
menu_additem(InfoKlas,"Galthran");
menu_additem(InfoKlas,"Szkielet");
menu_additem(InfoKlas,"Izual");
menu_additem(InfoKlas,"Mephisto");
menu_additem(InfoKlas,"Imp");
menu_additem(InfoKlas,"Lilith");
menu_additem(InfoKlas,"Szaman");
menu_additem(InfoKlas,"Pan Krwi");

menu_setprop(InfoKlas,MPROP_EXITNAME,"Wyjdz");
menu_setprop(InfoKlas, MPROP_BACKNAME, "Poprzednia strona");
menu_setprop(InfoKlas, MPROP_NEXTNAME, "Nastepna strona");

menu_setprop(MojeMenu,MPROP_EXIT,MEXIT_ALL);

menu_display(id, InfoKlas,0);
return PLUGIN_HANDLED;
}
public KlasyHandle(id, menu, item)
{
switch(item){
case 0: show_motd(id, "addons/amxmodx/diablo/czarodziej.txt","Czarodziej");
case 1: show_motd(id, "addons/amxmodx/diablo/druid.txt","Druid");
case 2: show_motd(id, "addons/amxmodx/diablo/paladyn.txt","Paladyn");
case 3: show_motd(id, "addons/amxmodx/diablo/zabojca.txt","Zabojca");
case 4: show_motd(id, "addons/amxmodx/diablo/nekromanta.txt","Nekromanta");
case 5: show_motd(id, "addons/amxmodx/diablo/barbarzynca.txt","Barbarzynca");
case 6: show_motd(id, "addons/amxmodx/diablo/ninja.txt","Ninja");
case 7: show_motd(id, "addons/amxmodx/diablo/amazonka.txt","Amazonka");
case 8: show_motd(id, "addons/amxmodx/diablo/andariel.txt","Andariel");
case 9: show_motd(id, "addons/amxmodx/diablo/hefasto.txt","Hefasto");
case 10: show_motd(id, "addons/amxmodx/diablo/baal.txt","Baal");
case 11: show_motd(id, "addons/amxmodx/diablo/diablo.txt","Diablo");
case 12: show_motd(id, "addons/amxmodx/diablo/durial.txt","Durial");
case 13: show_motd(id, "addons/amxmodx/diablo/grinswold.txt","Grinswold");
case 14: show_motd(id, "addons/amxmodx/diablo/fernando.txt","Fernando");
case 15: show_motd(id, "addons/amxmodx/diablo/galthran.txt","Galthran");
case 16: show_motd(id, "addons/amxmodx/diablo/szkielet.txt","Szkielet");
case 17: show_motd(id, "addons/amxmodx/diablo/izual.txt","Izual");
case 18: show_motd(id, "addons/amxmodx/diablo/mephisto.txt","Mephisto");
case 19: show_motd(id, "addons/amxmodx/diablo/imp.txt","imp");
case 20: show_motd(id, "addons/amxmodx/diablo/lilith.txt","Lilith");
case 21: show_motd(id, "addons/amxmodx/diablo/szaman.txt","Szaman");
case 22: show_motd(id, "addons/amxmodx/diablo/pankrwi.txt","Pan Krwi");
}
menu_destroy(menu);
return PLUGIN_HANDLED;
}

  • +
  • -
  • 1


#205472 Medyk

Napisane przez b0niek w 12.01.2011 22:04

Bez kodu źródłowego to nawet wróżka Sabina Ci nie pomoże :P



/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <codmod>
#include <engine>
#include <hamsandwich>

new sprite_white;
native cod_add_wskrzes(id, ile)
new ilosc_apteczek_gracza[33];


new const nazwa[] = "Medyk";
new const opis[] = "Posiada dwie apteczki";
new const bronie = 1<<CSW_SG552;
new const zdrowie = 20;
new const kondycja = 15;
new const inteligencja = 0;
new const wytrzymalosc = 20;
new ma_klase[33];

public plugin_init()
{
register_plugin("Medyk", "1.0", "QTM_Peyote");

cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);

register_think("medkit","MedkitThink");

register_event("ResetHUD", "ResetHUD", "abe");
RegisterHam(Ham_Spawn, "player", "Spawn", 1);
}

public plugin_precache()
{
sprite_white = precache_model("sprites/white.spr");
precache_model("models/w_medkit.mdl");
}

public cod_class_enabled(id)
{
ilosc_apteczek_gracza[id] = 2;
cod_add_wskrzes(id, 1)
ma_klase[id] = true
}
public cod_class_disabled(id)
{
cod_add_wskrzes(id, 0)
ma_klase[id] = false
}

public cod_class_skill_used(id)
{
if (!ilosc_apteczek_gracza[id])
{
client_print(id, print_center, "Masz tylko 2 apteczki na runde!");
return PLUGIN_CONTINUE;
}

ilosc_apteczek_gracza[id]--;

new Float:origin[3];
entity_get_vector(id, EV_VEC_origin, origin);

new ent = create_entity("info_target");
entity_set_string(ent, EV_SZ_classname, "medkit");
entity_set_edict(ent, EV_ENT_owner, id);
entity_set_int(ent, EV_INT_solid, SOLID_NOT);
entity_set_vector(ent, EV_VEC_origin, origin);
entity_set_float(ent, EV_FL_ltime, halflife_time() + 7 + 0.1);


entity_set_model(ent, "models/w_medkit.mdl");
set_rendering ( ent, kRenderFxGlowShell, 255,0,0, kRenderFxNone, 255 ) ;
drop_to_floor(ent);

entity_set_float(ent, EV_FL_nextthink, halflife_time() + 0.1);

return PLUGIN_CONTINUE;
}

public MedkitThink(ent)
{
new id = entity_get_edict(ent, EV_ENT_owner);
new dist = 300;
new heal = 5+floatround(cod_get_user_intelligence(id)*0.5);

if (entity_get_edict(ent, EV_ENT_euser2) == 1)
{
new Float:forigin[3];
entity_get_vector(ent, EV_VEC_origin, forigin);

new entlist[33];
new numfound = find_sphere_class(0,"player", float(dist),entlist, 32,forigin);

for (new i=0; i < numfound; i++)
{
new pid = entlist[i];

if (get_user_team(pid) != get_user_team(id))
continue;

new maksymalne_zdrowie = 100+cod_get_user_health(pid);
new zdrowie = get_user_health(pid);
new Float:nowe_zdrowie = (zdrowie+heal<maksymalne_zdrowie)?zdrowie+heal+0.0:maksymalne_zdrowie+0.0;
if (is_user_alive(pid)) entity_set_float(pid, EV_FL_health, nowe_zdrowie);
}

entity_set_edict(ent, EV_ENT_euser2, 0);
entity_set_float(ent, EV_FL_nextthink, halflife_time() + 1.5);

return PLUGIN_CONTINUE;
}

if (entity_get_float(ent, EV_FL_ltime) < halflife_time() || !is_user_alive(id))
{
remove_entity(ent);
return PLUGIN_CONTINUE;
}

if (entity_get_float(ent, EV_FL_ltime)-2.0 < halflife_time())
set_rendering ( ent, kRenderFxNone, 255,255,255, kRenderTransAlpha, 100 );

new Float:forigin[3];
entity_get_vector(ent, EV_VEC_origin, forigin);

new iOrigin[3];
for(new i=0;i<3;i++)
iOrigin[i] = floatround(forigin[i]);

message_begin( MSG_BROADCAST, SVC_TEMPENTITY, iOrigin );
write_byte( TE_BEAMCYLINDER );
write_coord( iOrigin[0] );
write_coord( iOrigin[1] );
write_coord( iOrigin[2] );
write_coord( iOrigin[0] );
write_coord( iOrigin[1] + dist );
write_coord( iOrigin[2] + dist );
write_short( sprite_white );
write_byte( 0 ); // startframe
write_byte( 0 ); // framerate
write_byte( 10 ); // life
write_byte( 10 ); // width
write_byte( 255 ); // noise
write_byte( 255 ); // r, g, b
write_byte( 100 );// r, g, b
write_byte( 100 ); // r, g, b
write_byte( 128 ); // brightness
write_byte( 0 ); // speed
message_end();

entity_set_edict(ent, EV_ENT_euser2 ,1);
entity_set_float(ent, EV_FL_nextthink, halflife_time() + 0.5);


return PLUGIN_CONTINUE;

}

public ResetHUD(id)
ilosc_apteczek_gracza[id] = 2;

public client_disconnect(id)
{
new ent = find_ent_by_class(0, "medkit");
while(ent > 0)
{
if(entity_get_edict(id, EV_ENT_owner) == id)
remove_entity(ent);
ent = find_ent_by_class(ent, "medkit");
}
}
public Spawn(id)
{
if(!is_user_alive(id) || !is_user_connected(id))
return PLUGIN_CONTINUE;

if(ma_klase[id])
cod_add_wskrzes(id, 1)

return PLUGIN_CONTINUE;
}



Tylko trochę klamrę jedną pomyliłeś i 2 klamry zgubiles :P
  • +
  • -
  • 1


#205358 Coś w stylu no fall damage.

Napisane przez b0niek w 12.01.2011 17:19


#include <amxmodx>
#include <amxmisc>
#include <cstrike.inc>
#include <hamsandwich>
#include <fakemeta>

#define PLUGIN "Terro No Fall Damage"
#define AUTHOR "b0niek"
#define VERSION "1.0"

public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)

RegisterHam( Ham_TakeDamage, "player", "spadanie" );

}

public spadanie(id, idinflictor, idattacker, Float:damage, damagebits )
{
if( !( damagebits & DMG_FALL ) )
{
return HAM_IGNORED
}
if(cs_get_user_team(id) == CS_TEAM_T)
{
return HAM_SUPERCEDE;
}


return HAM_IGNORED
}





Proszę, działa na 99%
  • +
  • -
  • 1


#205351 Przerabianie klasy na premium

Napisane przez b0niek w 12.01.2011 16:59

public cod_class_enabled(id)
{
        ColorChat(id, RED, "^x04Klasa^x03 %s^x04 By^x01 amxx.pl", nazwa); //Gdy gracz nie ma flagi wyświetli mu komunikat
        if(!(get_user_flags(id) & ADMIN_LEVEL_H)) //FLAGA
        {
                ColorChat(id, RED, "^x03[%s]^x04 Jest^x03 klasa premium", nazwa) //Znowu info ze przykładowa klasa jest premium 
                return COD_STOP;
        }
	set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 40);
	entity_set_float(id, EV_FL_gravity, 200.0/800.0);

        ma_klase[id] = true;
        return COD_CONTINUE;
}
public cod_class_enabled(id)
{
	set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 40);
	entity_set_float(id, EV_FL_gravity, 200.0/800.0);
	ma_klase[id] = true;
}

Widzisz?Masz 2 takie same funkcje. Zamiast tego wstaw:

public cod_class_enabled(id)
{
        ColorChat(id, RED, "^x04Klasa^x03 %s^x04 By^x01 amxx.pl", nazwa); //Gdy gracz nie ma flagi wyświetli mu komunikat
        if(!(get_user_flags(id) & ADMIN_LEVEL_H)) //FLAGA
        {
                ColorChat(id, RED, "^x03[%s]^x04 Jest^x03 klasa premium", nazwa) //Znowu info ze przykładowa klasa jest premium 
                return COD_STOP;
        }
	set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 40);
	entity_set_float(id, EV_FL_gravity, 200.0/800.0);

        ma_klase[id] = true;
        return COD_CONTINUE;
}


@down

Co do ninjy to usuń:

RegisterHam(Ham_TakeDamage, "player","TakeDamage");


  • +
  • -
  • 2


#205244 Przerabianie klasy na premium

Napisane przez b0niek w 11.01.2011 22:32

ColorChat(id, GREEN, "Klasa %s zostala stworzona przez www.PluginyMody.webd.pl", nazwa);
}
Do wywalenia to i plugin się kompiluje. Dodałeś to poza funkcją i dodałeś jedną klamrę zamykającą nie dodając otwierającej.
  • +
  • -
  • 3


#205241 Jak zrobic nowe klasy ?

Napisane przez b0niek w 11.01.2011 22:24

Brak codmod.inc w katalogu addons/amxmodx/scripting/include/ Plik do pobrania w załączniku i wrzuć go do addons/amxmodx/scripting/include/

Załączone pliki


  • +
  • -
  • 1


#205143 Menu Klas

Napisane przez b0niek w 11.01.2011 18:45


/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <amxmisc>
#include <colorchat>

#define PLUGIN "Potwory"
#define VERSION "1.0"
#define AUTHOR "Nup"


public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_clcmd("say /potwory","potwory")

}
public potwory(id)
{
new menu = menu_create("\d[\rWyswietl informacje o klasie\d]", "Potwory_Handle");

menu_additem(menu, "\yKlasa1");
menu_additem(menu, "\yKlasa2");
menu_additem(menu, "\yKlasa3");
menu_additem(menu, "\yKlasa4");
menu_additem(menu, "\yKlasa5");
menu_additem(menu, "\yKlasa6");
menu_additem(menu, "\yKlasa7");

menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
menu_display(id, menu);
}


public Potwory_Handle(id, menu, item)
{
if(item == MENU_EXIT)
{
menu_destroy(menu);
return PLUGIN_CONTINUE;
}

set_hudmessage(170, 255, 0, 0.3, 0.9, 0, 6.0, 15.0);


switch(item)
{
case 1:
{
ColorChat(id, RED, "[Klasy]^x04 INFO INFO INFO");

}
case 2:
{
ColorChat(id, RED, "[Klasy]^x04 INFO INFO INFO");

}
case 3:
{
ColorChat(id, RED, "[Klasy]^x04 INFO INFO INFO");

}
case 4:
{
ColorChat(id, RED, "[Klasy]^x04 INFO INFO INFO");

}
case 5:
{
ColorChat(id, RED, "[Klasy]^x04 INFO INFO INFO");

}
case 6:
{
ColorChat(id, RED, "[Klasy]^x04 INFO INFO INFO");

}
case 7:
{
ColorChat(id, RED, "[Klasy]^x04 INFO INFO INFO");

}

}
return PLUGIN_CONTINUE;
}


/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ ansicpg1250\\ deff0\\ deflang1045{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ f0\\ fs16 \n\\ par }
*/




Jeśli otwierasz cudzysłów to też trzeba go kończyć :P A poza tym w jednym miejscu o jeden } było zadużo i brakowało dwóch } na końcu.
  • +
  • -
  • 1