←  Poradniki oraz Łatki

AMXX.pl: Support AMX Mod X i SourceMod

»

Dodatek
Błyskawica

Ocet:) - zdjęcie Ocet:) 30.05.2011

Na wstepie mowie Ja tylko wyciagnalem kod z DiabloModa modified by OnYkE
Chcesz dodac do Klasy Rakiety?A Niewiesz Jak?
Ten Poradnik jest dla Ciebie!

Znajdz:

#include <csx>


Dodaj Pod:

#include <hamsandwich>

Znajdz:

new player_ring[33]        //ring stats bust +5

Dodaj Pod:

new ilosc_blyskawic[33],poprzednia_blyskawica[33];

Dodaj pod tym jeszcze:

new const gszSound[] = "ambience/thunder_clap.wav";

Jesli chcesz Zrobic na Binda to:

register_clcmd("blysk", "cmdBlyskawica");

I teraz w consoli wpisujemy bind "Klawisz" "blysk"
Jak chesz miec na R na Kosie to tak:

Szukasz:

//bow model

Dajesz pod:

[left]
if (button2 & IN_RELOAD && on_knife[id] && button[id]==0 && player_class[id]==Twoja_Klasa){
cmdBlyskawica(id)
}
[/left]
[left]Teraz jak Dodac dana Ilosc Blyskawic:[/left]
[left]Szukasz:[/left]
[left][sma]for (new i=0; i < 33; i++){[/sma][/left]
[left]Dajesz Pod:[/left]
[left][sma]if(player_class[i] == Twoja_Klasa)
{
ilosc_blyskawic[i]=3;
poprzednia_blyskawica[i]=0
}
else if(player_class[i] == Twoja_Klasa)
{
ilosc_blyskawic[i]=3;
poprzednia_blyskawica[i]=0
}
[/sma][/left]
Dodaj na Koniec .sma DiabloModa:

[sma]public cmdBlyskawica(id){
if(!is_user_alive(id)) return PLUGIN_HANDLED;
if(!ilosc_blyskawic[id]) {
client_print(id,print_chat,"Nie posiadasz wiecej blyskawic");
return PLUGIN_HANDLED;
}
if(poprzednia_blyskawica[id]+2.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]--;
new ofiara, body;
get_user_aiming(id, ofiara, body);

if(is_user_alive(ofiara)){
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 = 50.0, Float:fCzas = 1.0){
//Obrazenia
new ent = create_entity("info_target");
entity_set_string(ent, EV_SZ_classname, "blyskawica");
ExecuteHamB(Ham_TakeDamage, ofiara, ent, id, fObrazenia, 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);
}






I Gotowe!
Poradnik napisany dla Bardziej Zielonych
Jesli zoc Zapomnialem ( Pomylilem ) Pisz w Komentarzach Poprawie!
Pozdrawiam!
:)

</hamsandwich></csx>
Odpowiedz

  • +
  • -
Death_Player - zdjęcie Death_Player 27.06.2011

Jak komuś wyskakuje błąd przy kompilacji należy znaleźć

new sprite_smoke = 0

i dodać pod

new sprite;

Użytkownik Death_Player edytował ten post 27.06.2011 16:22
Odpowiedz

VVirus - zdjęcie VVirus 15.07.2011

Witam a czy można zrobić tak aby od inteligencji więcej zadawało ?
Odpowiedz

  • +
  • -
Death_Player - zdjęcie Death_Player 16.07.2011

znajdź
puscBlyskawice(id, ofiara, 50.0, 0.5);

zmień na:
puscBlyskawice(id, ofiara, 50.0+player_intelligence[id]*2, 0.5);

Tym sposobem będziesz zadawał obrażenia: 50 + wartość w inteligencję razy dwa.
Odpowiedz

VVirus - zdjęcie VVirus 16.07.2011

Dzięki masz dużego +++ :)
Odpowiedz

  • +
  • -
Dragonite - zdjęcie Dragonite 21.07.2011

tak sie zapytam jak naprawic buga ze kazda klasa ma ten skill jak sie da jednej i tak samo jest z rakietami
Odpowiedz

Koniarek - zdjęcie Koniarek 24.10.2011

Mam 2 pytania:

1.Jak zrobic ta Blyskawice ze leciala od gory nie od nas?
2.Jak zrobic zeby np.Klasa Izual miala bez limitu BLyskawice tylk zeby odliczalo czas pomiedzy nimi ze jak będę Trzymal R na Kosie to zeby pisalo Musisz poczekac 5 ,4,3,2,1 i po 1 leci ta blyskawica?
Użytkownik Koniarek edytował ten post 10.11.2011 23:46
Odpowiedz

Koniarek - zdjęcie Koniarek 11.11.2011

@Refresh

Aha cos jest nie tak z tym Dodatkiem poniewaz wgralem go i dalem na Klase Izual i jak biore No + R to sie robic Spam ze "Nie posiadasz wiecej blyskawic"
Odpowiedz

  • +
  • -
dog_1 - zdjęcie dog_1 27.05.2012

Brakuje jeszcze sprite!
Dodać do
public plugin_precache(){
sprite = precache_model("sprites/lgtning.spr");		
precache_sound(gszSound); }
Trzeba jeszcze najlepiej wyjść z pętli z Roundstart by nie spamowało konsoli.
Użytkownik dog_1 edytował ten post 27.05.2012 21:02
Odpowiedz