mirror of
https://github.com/UberGames/RPG-X2.git
synced 2025-02-21 02:31:29 +00:00
Added target_shaderremap provided by Harry Young
Signed-off-by: UberGames <admin@ubergames.org>
This commit is contained in:
parent
e03c490c2f
commit
1c0613c59a
2 changed files with 55 additions and 1 deletions
|
@ -181,6 +181,9 @@ void SP_target_warp(gentity_t *ent); //RPG-X | GSIO01 | 19/05/2009
|
|||
void SP_target_deactivate(gentity_t *ent);
|
||||
void SP_target_serverchange(gentity_t *ent);
|
||||
void SP_target_levelchange(gentity_t *ent);
|
||||
#ifdef XTRA
|
||||
void SP_target_shaderremap(gentity_t *ent);
|
||||
#endif
|
||||
|
||||
void SP_light (gentity_t *self);
|
||||
void SP_info_null (gentity_t *self);
|
||||
|
@ -370,6 +373,9 @@ spawn_t spawns[] = {
|
|||
{"target_deactivate", SP_target_deactivate},
|
||||
{"target_serverchange", SP_target_serverchange},
|
||||
{"target_levelchange", SP_target_levelchange},
|
||||
#ifdef XTRA
|
||||
{"target_shaderremap", SP_target_shaderremap},
|
||||
#endif
|
||||
|
||||
{"light", SP_light},
|
||||
{"path_corner", SP_path_corner},
|
||||
|
|
|
@ -2827,4 +2827,52 @@ void SP_target_levelchange(gentity_t *ent) {
|
|||
|
||||
void SP_target_holodeck(gentity_t *ent) {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
//RPG-X | Harry Young | 15/10/2011 | MOD START
|
||||
#ifdef XTRA
|
||||
/*QUAKED target_shaderremap (1 0 0) (-8 -8 -8) (8 8 8)
|
||||
This will remap the shader "falsename" with shader "truename" and vice versa.
|
||||
It will save you some vfx-usables.
|
||||
|
||||
This Entity only works on RPGXEF
|
||||
|
||||
*/
|
||||
void target_shaderremap_think(gentity_t *ent) {
|
||||
float f = 0;
|
||||
if(!ent->spawnflags) {
|
||||
f = level.time * 0.001;
|
||||
AddRemap(ent->falsename, ent->truename, f);
|
||||
ent->spawnflags = 1;
|
||||
ent->nextthink = -1;
|
||||
} else {
|
||||
f = level.time * 0.001;
|
||||
AddRemap(ent->falsename, ent->falsename, f);
|
||||
ent->spawnflags = 0;
|
||||
ent->nextthink = -1;
|
||||
}
|
||||
trap_SetConfigstring(CS_SHADERSTATE, BuildShaderStateConfig());
|
||||
}
|
||||
|
||||
void target_shaderremap_use(gentity_t *ent, gentity_t *other, gentity_t *activator) {
|
||||
ent->think = target_shaderremap_think;
|
||||
ent->nextthink = level.time + 50; /* level.time + one frame */
|
||||
}
|
||||
|
||||
void SP_target_shaderremap(gentity_t *ent) {
|
||||
if(!ent->falsename) {
|
||||
G_Printf(S_COLOR_RED "target_shaderremap without falsename-shader at %s!\n", vtos(ent->s.origin));
|
||||
G_FreeEntity(ent);
|
||||
return;
|
||||
}
|
||||
|
||||
if(!ent->truename) {
|
||||
G_Printf(S_COLOR_RED "target_shaderremap without truename-shader at %s!\n", vtos(ent->s.origin));
|
||||
G_FreeEntity(ent);
|
||||
return;
|
||||
}
|
||||
|
||||
ent->use = target_shaderremap_use;
|
||||
}
|
||||
#endif
|
||||
//RPG-X | Harry Young | 15/10/2011 | MOD END
|
||||
|
|
Loading…
Reference in a new issue