←  Prośby o Klasę/Perk

AMXX.pl: Support AMX Mod X i SourceMod

»

Prośba o klasę.

  • +
  • -
DRUM - zdjęcie DRUM 28.02.2012

Witam , chcialbym aby ktos pomogl mi przerobic klase elektryk.
*Elektryk
-Opis: 2 Błyskawice(użycie klawisz E), 3 skoki
-Bronie: M4 , Deagle.

Zdrowie: 40.
Inteligencja: 20.
Kondycja: 40.
Wytrzymałość: 20.

Ma zmniejszony demage z błyskawicy.

Proszę o zrobienie .sma
Użytkownik DRUM edytował ten post 28.02.2012 16:58
Odpowiedz

YingYang - zdjęcie YingYang 28.02.2012

#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <codmod>
#include <engine>
#include <hamsandwich>
new sprite;
new ilosc_blyskawic[33],poprzednia_blyskawica[33];
new const gszSound[] = "ambience/thunder_clap.wav";
new const nazwa[] = "Elektryk";
new const opis[] = "Masz 1 blyskawice. ( Uzycie: klawisz E )";
new const bronie = 1<<CSW_M4A1 | 1<<CSW_DEAGLE;
new const zdrowie = 40;
new const kondycja = 40;
new const inteligencja = 20;
new const wytrzymalosc = 20;
new ma_klase[33]
public plugin_init() {
register_plugin(nazwa, "1.0", "piterka");
cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);

register_event("ResetHUD", "ResetHUD", "abe");
}
public plugin_precache()
{
sprite = precache_model("sprites/lgtning.spr");
precache_sound(gszSound);
}
public cod_class_enabled(id)
{
ilosc_blyskawic[id] = 1;
ma_klase[id] = 1;
return COD_CONTINUE;
}
public cod_class_disabled(id)
{
ma_klase[id] = 0;
ilosc_blyskawic[id] = 0;
}
public fwCmdStart_MultiJump(id, uc_handle)
{
if(!is_user_alive(id) || !ma_klase[id])
return FMRES_IGNORED;
new flags = pev(id, pev_flags);
if((get_uc(uc_handle, UC_Buttons) & IN_JUMP) && !(flags & FL_ONGROUND) && !(pev(id, pev_oldbuttons) & IN_JUMP) && skoki[id])
{
skoki[id]--;
new Float:velocity[3];
pev(id, pev_velocity,velocity);
velocity[2] = random_float(265.0,285.0);
set_pev(id, pev_velocity,velocity);
}
else if(flags & FL_ONGROUND)
skoki[id] = 2;
return FMRES_IGNORED;
}
public cod_class_skill_used(id) {
if(!is_user_alive(id)) return PLUGIN_HANDLED;
if(!ilosc_blyskawic[id]) {
return PLUGIN_HANDLED;
}
new ofiara, body;
get_user_aiming(id, ofiara, body);

if(is_user_alive(ofiara)){
if(get_user_team(ofiara) == get_user_team(id)) {
return PLUGIN_HANDLED;
}

if(poprzednia_blyskawica[id]+5.0>get_gametime()) {
client_print(id,print_chat,"Blyskawicy mozesz uzyc raz na 5 sek.");
return PLUGIN_HANDLED;
}
poprzednia_blyskawica[id] = floatround(get_gametime());
ilosc_blyskawic[id]--;
puscBlyskawice(id, ofiara, 50.0, 0.5);
}
return PLUGIN_HANDLED;
}
stock Create_TE_BEAMENTS(startEntity, endEntity, iSprite, startFrame, frameRate, life, width, noise, red, green, blue, alpha, speed) {
message_begin( MSG_BROADCAST, SVC_TEMPENTITY )
write_byte( TE_BEAMENTS )
write_short( startEntity ) // start entity
write_short( endEntity ) // end entity
write_short( iSprite ) // model
write_byte( startFrame ) // starting frame
write_byte( frameRate ) // frame rate
write_byte( life ) // life
write_byte( width ) // line width
write_byte( noise ) // noise amplitude
write_byte( red ) // red
write_byte( green ) // green
write_byte( blue ) // blue
write_byte( alpha ) // brightness
write_byte( speed ) // scroll speed
message_end()
}
puscBlyskawice(id, ofiara, Float:fObrazenia = 55.0, Float:fCzas = 1.0){
//Obrazenia
new ent = create_entity("info_target");
entity_set_string(ent, EV_SZ_classname, "blyskawica");
cod_inflict_damage(id, ofiara, fObrazenia, 1.0, ent, DMG_SHOCK);

remove_entity(ent);

//Piorun
Create_TE_BEAMENTS(id, ofiara, sprite, 0, 10, floatround(fCzas*10), 150, 5, 200, 200, 200, 200, 10);

//Dzwiek
emit_sound(id, CHAN_WEAPON, gszSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
emit_sound(ofiara, CHAN_WEAPON, gszSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
}

public ResetHUD(id) {
if(ma_klase[id] == 1) {
ilosc_blyskawic[id] = 1;
}
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1045\\ f0\\ fs16 \n\\ par }
*/

łapaj
Użytkownik Goliath edytował ten post 01.03.2012 15:33
Odpowiedz

  • +
  • -
DRUM - zdjęcie DRUM 28.02.2012

Nie można go skompilować na plik amxx. :(

Pomoże ktoś.
Użytkownik DRUM edytował ten post 28.02.2012 17:32
Odpowiedz

YingYang - zdjęcie YingYang 28.02.2012

Bo urzywasz zapewne komplikatora online (Na necie)
Odpowiedz

  • +
  • -
zQnem - zdjęcie zQnem 28.02.2012

Zabrakło
#include <fakemeta>
new skoki[33];

Poza tym było wszystko dobrze :)


#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <codmod>
#include <engine>
#include <hamsandwich>
#include <fakemeta>

new sprite;

new ilosc_blyskawic[33],poprzednia_blyskawica[33];
new const gszSound[] = "ambience/thunder_clap.wav";
new const nazwa[] = "Elektryk";
new const opis[] = "Masz 1 blyskawice. ( Uzycie: klawisz E )";
new const bronie = 1<<CSW_M4A1 | 1<<CSW_DEAGLE;
new const zdrowie = 40;
new const kondycja = 40;
new const inteligencja = 20;
new const wytrzymalosc = 20;

new ma_klase[33];
new skoki[33];

public plugin_init() {
	register_plugin(nazwa, "1.0", "piterka");
	cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
	
	register_event("ResetHUD", "ResetHUD", "abe");
}

public plugin_precache()
{
	sprite = precache_model("sprites/lgtning.spr");
	precache_sound(gszSound);
}

public cod_class_enabled(id)
{
	ilosc_blyskawic[id] = 1;
	ma_klase[id] = 1;
	return COD_CONTINUE;
}
public cod_class_disabled(id)
{
	ma_klase[id] = 0;
	ilosc_blyskawic[id] = 0;
}
public fwCmdStart_MultiJump(id, uc_handle)
{
	if(!is_user_alive(id) || !ma_klase[id])
	return FMRES_IGNORED;
	new flags = pev(id, pev_flags);
	if((get_uc(uc_handle, UC_Buttons) & IN_JUMP) && !(flags & FL_ONGROUND) && !(pev(id, pev_oldbuttons) & IN_JUMP) && skoki[id])
	{
		skoki[id]--;
		new Float:velocity[3];
		pev(id, pev_velocity,velocity);
		velocity[2] = random_float(265.0,285.0);
		set_pev(id, pev_velocity,velocity);
	}
	else if(flags & FL_ONGROUND)
	skoki[id] = 2;
	return FMRES_IGNORED;
}
public cod_class_skill_used(id) {
	if(!is_user_alive(id)) return PLUGIN_HANDLED;
	if(!ilosc_blyskawic[id]) {
	return PLUGIN_HANDLED;
}
new ofiara, body;
get_user_aiming(id, ofiara, body);

if(is_user_alive(ofiara)){
  if(get_user_team(ofiara) == get_user_team(id)) {
   return PLUGIN_HANDLED;
  }

  if(poprzednia_blyskawica[id]+5.0>get_gametime()) {
   client_print(id,print_chat,"Blyskawicy mozesz uzyc raz na 5 sek.");
   return PLUGIN_HANDLED;
  }
  poprzednia_blyskawica[id] = floatround(get_gametime());
  ilosc_blyskawic[id]--;
  puscBlyskawice(id, ofiara, 50.0, 0.5);
}
return PLUGIN_HANDLED;
}
stock Create_TE_BEAMENTS(startEntity, endEntity, iSprite, startFrame, frameRate, life, width, noise, red, green, blue, alpha, speed) {
	message_begin( MSG_BROADCAST, SVC_TEMPENTITY )
	write_byte( TE_BEAMENTS )
	write_short( startEntity )			  // start entity
	write_short( endEntity )				// end entity
	write_short( iSprite )				  // model
	write_byte( startFrame )				// starting frame
	write_byte( frameRate )				 // frame rate
	write_byte( life )							  // life
	write_byte( width )							 // line width
	write_byte( noise )							 // noise amplitude
	write_byte( red )							   // red
	write_byte( green )							 // green
	write_byte( blue )							  // blue
	write_byte( alpha )							 // brightness
	write_byte( speed )							 // scroll speed
	message_end()
}
puscBlyskawice(id, ofiara, Float:fObrazenia = 55.0, Float:fCzas = 1.0){
//Obrazenia
	new ent = create_entity("info_target");
	entity_set_string(ent, EV_SZ_classname, "blyskawica");
	cod_inflict_damage(id, ofiara, fObrazenia, 1.0, ent, DMG_SHOCK);

	remove_entity(ent);

//Piorun
	Create_TE_BEAMENTS(id, ofiara, sprite, 0, 10, floatround(fCzas*10), 150, 5, 200, 200, 200, 200, 10);

//Dzwiek
	emit_sound(id, CHAN_WEAPON, gszSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
	emit_sound(ofiara, CHAN_WEAPON, gszSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
}

public ResetHUD(id) {
	if(ma_klase[id] == 1)
	{
		ilosc_blyskawic[id] = 1;
	}
}

P.S Też używam kompilatora na necie ^.^
Użytkownik zQnem edytował ten post 28.02.2012 18:57
Odpowiedz

  • +
  • -
DRUM - zdjęcie DRUM 29.02.2012

Dziękuję. Leci +

Można zamknąć :)
Odpowiedz

  • +
  • -
DRUM - zdjęcie DRUM 29.02.2012

Wiesz sprawdziłem i prawie wszystko jest ok tylko ma 1 skok nie 2 ;( Da się coś zmienić bo ja zielony jestem dzięki z góry poleci

Sory za 2 posty pod rząd.
Użytkownik DRUM edytował ten post 29.02.2012 17:18
Odpowiedz

  • +
  • -
zQnem - zdjęcie zQnem 29.02.2012

Szczerze mówiąc nie miałem pojęcia, że był tam tylko 1 skok. I mówiąc prawdę sam nie wiedziałem jak to zmienić. :D
Po chwili namysłu doszedłem do wniosku, że musisz dopisać
skoki[id] = 2;
do public cod_class_enabled
Oraz
skoki[id] = 0;
do public cod_class_disabled

Nie jestem pewny w 100%, lecz wierze, że zadziała.
Z kompilacją nie powinno być problemów :)
Odpowiedz

Kolar`. - zdjęcie Kolar`. 29.02.2012

@up

źle
Odpowiedz

  • +
  • -
zQnem - zdjęcie zQnem 29.02.2012

Kolar skąd wiesz, że źle? Testowałeś? Jak jest źle to napisz jak powinno być dobrze :)
Odpowiedz

Kolar`. - zdjęcie Kolar`. 29.02.2012

public fwCmdStart_MultiJump(id, uc_handle)
{
if(!is_user_alive(id) || !ma_klase[id])
return FMRES_IGNORED;
new flags = pev(id, pev_flags);
if((get_uc(uc_handle, UC_Buttons) & IN_JUMP) && !(flags & FL_ONGROUND) && !(pev(id, pev_oldbuttons) & IN_JUMP) && skoki[id])
{
skoki[id]--;
new Float:velocity[3];
pev(id, pev_velocity,velocity);
velocity[2] = random_float(265.0,285.0);
set_pev(id, pev_velocity,velocity);
}
else if(flags & FL_ONGROUND)
skoki[id] = 2;
return FMRES_IGNORED;
}
Odpowiedz

  • +
  • -
zQnem - zdjęcie zQnem 29.02.2012

Nie wiem czy jestem ślepy czy co, ale ten sam kod jest kilka postów wyżej...
Również jest napisane "skoki[id] = 2;" .. Więc nie wiem o co Tobie chodzi. Dokładnie taki sam kod, a no i dodam, że nie działa podwójny skok, dlatego tamto wymyśliłem :)
Odpowiedz

  • +
  • -
DRUM - zdjęcie DRUM 02.03.2012

No wszystko pięknie ale jeśli macie sobie wytykać co jest gdzie napisane to szkoda robić spam.

Jeśli ktoś się czuje na siłach to proszę o dodanie mu tych skoków.

Z góry THX.

Będą +.
Odpowiedz