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.
|
Wywołanie sprita.
#1
Napisano 15.05.2011 21:04
Chodzi mi o to że gdy np wpiszemy.
/boom
używa się na nas sprite.
Coś w stylu wybuchu.
[Aktualizacja 22.01.2015] GunXpMod 2.7.4
#2
Napisano 15.05.2011 21:37
#3
Napisano 16.05.2011 18:47
[Aktualizacja 22.01.2015] GunXpMod 2.7.4
#4
Napisano 16.05.2011 19:37
tylko że to po angielskupoczytaj opisy w messages_const.inc
#5
Napisano 16.05.2011 20:27
[Aktualizacja 22.01.2015] GunXpMod 2.7.4
#6
Napisano 16.05.2011 23:14
Co prawda opisane łopatologicznie i z błędami ale kod sam w sobie działa - początki mojego scriptingu
Albo jak chcesz prościej to po dodaniu precache
set_sprite(id, sprite, radius){ new vOrigin[3]; get_user_origin(id, vOrigin, 0); message_begin(MSG_BROADCAST, SVC_TEMPENTITY, vOrigin); write_byte(TE_EXPLOSION; write_coord(vOrigin[0]); write_coord(vOrigin[1]); write_coord(vOrigin[2]); write_short(sprite); write_byte(radius); write_byte(18); write_byte(6); message_end(); }
Użytkownik diablix edytował ten post 16.05.2011 23:16
#7
Napisano 17.05.2011 16:02
Zrobiłem nową funkcje
public test(id) { new dym; dym = engfunc(EngFunc_PrecacheModel, "sprites/Poof.spr"); set_sprite(player_origin[3], sprite, radius){ message_begin(MSG_BROADCAST, SVC_TEMPENTITY, player_origin); write_byte(TE_EXPLOSION) //wg uznania; write_coord(player_origin[0]); //ja użylem żeby działał na pozycje gracza. Oczywiście można według własnego uznania; write_coord(player_origin[1]); write_coord(player_origin[2]); write_short(sprite); //bedziemy ustalac nasz sprite; write_byte(radius); //bedzie uzywany do nadania sprite (promien razenia); write_byte(18); write_byte(6); message_end(); } }I funkcji której chciałem użyć sprita
new player_origin[3]; //tworzymy index, wczesniej uzywany w funkcji; get_user_origin(ent, player_origin, 0); set_sprite(player_origin, dym, 40); //index, wybrany sprite, wielkość promienia;
A wywala mi taki błąd
error 017: undefined symbol "ent" warning 215: expression has no effect warning 215: expression has no effect error 001: expected token: ";", but found ")" error 029: invalid expression, assumed zero fatal error 107: too many error messages on one line
Gdy dodałem zmienną
new ent;wyskakuje mi inny błąd
error 017: undefined symbol "set_sprite"
Użytkownik ELOS edytował ten post 17.05.2011 16:07
[Aktualizacja 22.01.2015] GunXpMod 2.7.4
#8
Napisano 17.05.2011 16:16
public test(id)
{
new dym = precache_model("sprites/Poof.spr");
set_sprite(id, dym, 500)
}
stock set_sprite(id, sprite, radius)
{
new orgin[3]
get_user_origin(id, orgin, 0)
message_begin(MSG_BROADCAST, SVC_TEMPENTITY);
write_byte(TE_EXPLOSION)
write_coord(orgin[0])
write_coord(orgin[1])
write_coord(orgin[2])
write_short(sprite);
write_byte(radius);
write_byte(18);
write_byte(6);
message_end();
}
Użytkownik Cypis' edytował ten post 17.05.2011 16:21
#9
Napisano 17.05.2011 16:21
error 017: undefined symbol "set_sprite" warning 217: loose indentation error 029: invalid expression, assumed zero error 017: undefined symbol "set_sprite" error 017: undefined symbol "radius"
[Aktualizacja 22.01.2015] GunXpMod 2.7.4
#10
Napisano 17.05.2011 16:27
#include <amxmodx>
#include <amxmisc>
#define PLUGIN "New Plug-In"
#define VERSION "1.0"
#define AUTHOR "Patryk"
new dym
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_clcmd ("test", "test");
}
public plugin_precache()
dym = precache_model("sprites/Poof.spr");
public test(id)
set_sprite(id, dym, 500);
stock set_sprite(id, sprite, radius)
{
new orgin[3];
get_user_origin(id, orgin, 0);
message_begin(MSG_BROADCAST, SVC_TEMPENTITY);
write_byte(TE_EXPLOSION);
write_coord(orgin[0]);
write_coord(orgin[1]);
write_coord(orgin[2]);
write_short(sprite);
write_byte(radius);
write_byte(18);
write_byte(6);
message_end();
}
#11
Napisano 17.05.2011 17:54
[Aktualizacja 22.01.2015] GunXpMod 2.7.4
#12
Napisano 17.05.2011 18:33
#13
Napisano 17.05.2011 20:49
Z tego nic nie działazmniejsz w tym set_sprite(id, dym, 500); z 500 na mniejszą i tu write_byte(6); zmieniasz 6 na liczę w sekundach jaką chcesz chyba.
to 1 dałem na 20 nadal duże a to 2 dałem na 50 i nadal krótko.
[Aktualizacja 22.01.2015] GunXpMod 2.7.4
#14
Napisano 18.05.2011 15:12
#define TE_EXPLOSION 3 // Additive sprite, 2 dynamic lights, flickering particles, explosion sound, move vertically 8 pps
// write_byte(TE_EXPLOSION)
// write_coord(position.x)
// write_coord(position.y)
// write_coord(position.z)
// write_short(sprite index)
// write_byte(scale in 0.1's)
// write_byte(framerate)
// write_byte(flags)
//
Framerate to nie jest czas sprita -.-
#15
Napisano 18.05.2011 17:41
[Aktualizacja 22.01.2015] GunXpMod 2.7.4
#16
Napisano 22.05.2011 20:08
Użytkownicy przeglądający ten temat: 0
0 użytkowników, 0 gości, 0 anonimowych