Quake Sprites
Moderator: InsideQC Admins
17 posts
• Page 1 of 2 • 1, 2
Quake Sprites
Hi guys
i want to make plasma sprites.For example i will show this picture
http://img141.imageshack.us/img141/5823/missile.jpg
How can i make it in firerocket to use for example this jpg file?I tried fimg but it wrote me that save function does not work.Is there some way to create more frames for example on missile explode?
PS:Sorry for my english.
________
Yamaha YZ250F
i want to make plasma sprites.For example i will show this picture
http://img141.imageshack.us/img141/5823/missile.jpg
How can i make it in firerocket to use for example this jpg file?I tried fimg but it wrote me that save function does not work.Is there some way to create more frames for example on missile explode?
PS:Sorry for my english.
________
Yamaha YZ250F
Last edited by lukas2288 on Thu Feb 03, 2011 6:18 am, edited 1 time in total.
- lukas2288
- Posts: 42
- Joined: Sun Jun 14, 2009 4:40 pm
Re: Quake Sprites
lukas2288 wrote:Hi guys
i want to make plasma sprites.For example i will show this picture
http://img141.imageshack.us/img141/5823/missile.jpg
How can i make it in firerocket to use for example this jpg file?I tried fimg but it wrote me that save function does not work.Is there some way to create more frames for example on missile explode?
PS:Sorry for my english.
Or how can imake visible only the picture without the black square in game.
________
Bmw X5 M
Last edited by lukas2288 on Tue Mar 08, 2011 12:49 am, edited 1 time in total.
- lukas2288
- Posts: 42
- Joined: Sun Jun 14, 2009 4:40 pm
MauveBib wrote:You need to use the alpha channel of the TGA to represent transparency.
PLease can you send me some freeware program which will do this?I think that Photoshop can do that but it is shareware.
________
volcano vaporizer
Last edited by lukas2288 on Thu Feb 03, 2011 6:18 am, edited 1 time in total.
- lukas2288
- Posts: 42
- Joined: Sun Jun 14, 2009 4:40 pm
I think http://www.gimp.org/ is probably the best freeware image manipulation software., but I'm not sure since I use a commercial package.
Apathy Now!
-

MauveBib - Posts: 634
- Joined: Thu Nov 04, 2004 1:22 am
Last question about sprites.I madeing plasma weapons and spr files containes 4 frames.But when i fired it plays only frame 1.How can i increase it into 4 frames?
________
Volvo Cars picture
________
Volvo Cars picture
Last edited by lukas2288 on Thu Feb 03, 2011 6:19 am, edited 1 time in total.
- lukas2288
- Posts: 42
- Joined: Sun Jun 14, 2009 4:40 pm
-

Error - InsideQC Staff
- Posts: 865
- Joined: Fri Nov 05, 2004 5:15 am
- Location: VA, USA
Error wrote:you have to manually loop it.
go through each frame. it won't play on it's own.
Do you mean on qc or in fimg?
________
buy extreme q vaporizer
Last edited by lukas2288 on Thu Feb 03, 2011 6:19 am, edited 1 time in total.
- lukas2288
- Posts: 42
- Joined: Sun Jun 14, 2009 4:40 pm
lukas2288 wrote:Error wrote:you have to manually loop it.
go through each frame. it won't play on it's own.
Do you mean on qc or in fimg?
He means in qc.
-

Dr. Shadowborg - InsideQC Staff
- Posts: 1110
- Joined: Sat Oct 16, 2004 3:34 pm
i know that here is some example code in weapons qc:
void() s_explode1 = [0, s_explode2] {};
void() s_explode2 = [1, s_explode3] {};
void() s_explode3 = [2, s_explode4] {};
void() s_explode4 = [3, s_explode5] {};
void() s_explode5 = [4, s_explode6] {};
void() s_explode6 = [5, SUB_Remove] {};
void() BecomeExplosion =
{
self.movetype = MOVETYPE_NONE;
self.velocity = '0 0 0';
self.touch = SUB_Null;
setmodel (self, "progs/s_explod.spr");
self.solid = SOLID_NOT;
s_explode1 ();
};
so here is the new effect spr:
void() n_effect1 = [0, n_effect] {};
void() n_effect2 = [1, n_effect] {};
void() n_effect3 = [2, n_effect] {};
void() n_effect4 = [3, n_effect1] {};
void() NewEffect =
{
self.movetype = MOVETYPE_NONE;
self.velocity = '0 0 0';
self.touch = SUB_Null;
setmodel (self, "progs/neweffect.spr");
self.solid = SOLID_NOT;
n_effect1 ();
};
But how can i put it for example in FireRocket function to replace missile.mdl with animated NewEffect?
________
herbalaire
void() s_explode1 = [0, s_explode2] {};
void() s_explode2 = [1, s_explode3] {};
void() s_explode3 = [2, s_explode4] {};
void() s_explode4 = [3, s_explode5] {};
void() s_explode5 = [4, s_explode6] {};
void() s_explode6 = [5, SUB_Remove] {};
void() BecomeExplosion =
{
self.movetype = MOVETYPE_NONE;
self.velocity = '0 0 0';
self.touch = SUB_Null;
setmodel (self, "progs/s_explod.spr");
self.solid = SOLID_NOT;
s_explode1 ();
};
so here is the new effect spr:
void() n_effect1 = [0, n_effect] {};
void() n_effect2 = [1, n_effect] {};
void() n_effect3 = [2, n_effect] {};
void() n_effect4 = [3, n_effect1] {};
void() NewEffect =
{
self.movetype = MOVETYPE_NONE;
self.velocity = '0 0 0';
self.touch = SUB_Null;
setmodel (self, "progs/neweffect.spr");
self.solid = SOLID_NOT;
n_effect1 ();
};
But how can i put it for example in FireRocket function to replace missile.mdl with animated NewEffect?
________
herbalaire
Last edited by lukas2288 on Thu Feb 03, 2011 6:19 am, edited 1 time in total.
- lukas2288
- Posts: 42
- Joined: Sun Jun 14, 2009 4:40 pm
lukas2288 wrote:But how can i put it for example in FireRocket function to replace missile.mdl with animated NewEffect?
If this is an impact explosion, then just look in T_MissileTouch and replace the BecomeExplosion(); with NewEffect();. (note that you have a bug in your animation code that will cause the animation to never dissappear and continue to animate.)
If this is for a projectile animation, then what you need to do is add something like this:
- Code: Select all
void() PlasmaThink =
{
self.frame = self.frame + 1; // Advance frame by one every think.
if(self.frame > 3) // start from beginning of animation if it's time
self.frame = 0;
if(self.attack_finished <= time) // Remove if lifetime is exceeded
remove(self);
self.think = PlasmaThink;
self.nextthink = time + 0.01; // this is the anim framerate speed
};
Then, in FireRocket or whatever change this:
- Code: Select all
missile.nextthink = time + 5;
missile.think = SUB_Remove;
setmodel(missile, "progs/missile.mdl");
To this:
- Code: Select all
missile.frame = 0; // set what frame it starts at
missile.nextthink = time + 0.01; // set nextthink time
missile.think = PlasmaThink; // set what it's supposed to think about
missile.attack_finished = time + 5; // dissappear in 5 secs if no impact
setmodel(missile, "progs/neweffect.spr"); // set model to new plasma sprite
-

Dr. Shadowborg - InsideQC Staff
- Posts: 1110
- Joined: Sat Oct 16, 2004 3:34 pm
leileilol wrote:metlslime wrote:....or engines.
I know Qtest supported that feature
Well, glquake broke a bunch of stuff with sprites (e.g. orientations) and models (i.e. only correctly supports 2- or 4- frame skingroups) so it could have broken sprite framegroups too. And since glquake is the daddy of a bunch of engines out there, if glquake broke it, it's likely broken in a bunch of engines.
- metlslime
- Posts: 316
- Joined: Tue Feb 05, 2008 11:03 pm
17 posts
• Page 1 of 2 • 1, 2
Who is online
Users browsing this forum: No registered users and 1 guest