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
 

answerr. - zdjęcie

answerr.

Rejestracja: 15.07.2014
Aktualnie: Nieaktywny
Poza forum Ostatnio: 16.07.2014 14:37
-----

Moje tematy

[Klasa]Paintballowy Kamikadze zmiana animacji

15.07.2014 19:10

Posiadam serwer paintball + klasy (silnik codmod) i chciałbym, aby serwer paintball był serwer paintball dlatego chcę zrobić wszystko realistycznie. Chodzi mi tutaj o zmiane animacji w klasie na animacje wybuchu smoke na pb lub flashbanga (wyrzucasz jeden granat i po chwili on wyrzuca małe, które wybuchają). Nie wiem czy coś takiego jest możliwe, ale wydaje mi się, że tak. Wczoraj próbowałem coś skleić, ale mi nie wyszło.

 

/* Plugin generated by AMXX-Studio */


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


#define DMG_BULLET (1<<1)


new bool:ma_klase[33];


new const nazwa[] = "Paintballowy Kamikadze";
new const opis[] = "Wybucha po smierci zadajac 50(+intelgencja) obrazen";
new const bronie = 1<<CSW_MP5NAVY;
new const zdrowie = 10;
new const kondycja = 5;
new const inteligencja = 15;
new const wytrzymalosc = 10;


new sprite_blast, sprite_white;


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


cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
register_event("DeathMsg", "Death", "ade");
}


public plugin_precache()
{
sprite_white = precache_model("sprites/smokepuff.spr") ;
sprite_blast = precache_model("sprites/smokepuff.spr");
}


public Death()
{
new id = read_data(2);
if(ma_klase[id])
Eksploduj(id);
}


public Eksploduj(id)
{
new Float:fOrigin[3], iOrigin[3];
entity_get_vector( id, EV_VEC_origin, fOrigin);
iOrigin[0] = floatround(fOrigin[0]);
iOrigin[1] = floatround(fOrigin[1]);
iOrigin[2] = floatround(fOrigin[2]);


message_begin(MSG_BROADCAST,SVC_TEMPENTITY, iOrigin);
write_byte(TE_EXPLOSION);
write_coord(iOrigin[0]);
write_coord(iOrigin[1]);
write_coord(iOrigin[2]);
write_short(sprite_blast);
write_byte(32);
write_byte(20);
write_byte(0);
message_end();


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] + 300 );
write_coord( iOrigin[2] + 300 );
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( 8 ); // speed
message_end();


new entlist[33];
new numfound = find_sphere_class(id, "player", 300.0 , entlist, 32);


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


if (!is_user_alive(pid) || get_user_team(id) == get_user_team(pid))
continue;
cod_inflict_damage(id, pid, 50.0, 0.7);
}
return PLUGIN_CONTINUE;
}


Oczywiście kompilacja powiodła się, ale nie uzyskałem pożądanego efektu czyli wybuchu smoke. Moge zarzucić folder sprite jeżeli ktoś potrzebuje do modyfikacji.

Dodam, że jest to tylko zmieniona klasa Generał.

Dziękuje jeżeli ktoś pomoze ;]