Xonotic QuakeC
The free, fast arena FPS with crisp movement and a wide array of weapons
sv_spawner.qc
Go to the documentation of this file.
1#include "sv_spawner.qh"
2
5
6void spawner_use(entity this, entity actor, entity trigger)
7{
8 int moncount = 0;
9 IL_EACH(g_monsters, it.realowner == this,
10 {
11 ++moncount;
12 });
13
14 if(moncount >= this.count)
15 return;
16
17 entity e = spawn();
18 e.noalign = this.noalign;
19 e.angles = this.angles;
20 e.monster_skill = this.monster_skill;
21 e.skin = this.skin;
22 e = spawnmonster(e, this.spawnmob, MON_Null, this, this, this.origin, false, true, this.monster_moveflags);
23}
24
25spawnfunc(monster_spawner)
26{
27 if(!autocvar_g_monsters || !this.spawnmob || this.spawnmob == "") { delete(this); return; }
28
29 this.use = spawner_use;
30}
var entity(vector mins, vector maxs,.entity tofield) findbox_tofield_OrFallback
float count
Definition powerups.qc:22
float skin
vector origin
#define spawn
#define use
ent angles
Definition ent_cs.qc:121
#define IL_EACH(this, cond, body)
bool noalign
Definition items.qh:36
#define spawnfunc(id)
Definition spawnfunc.qh:96
int monster_moveflags
int monster_skill
float autocvar_g_monsters
Definition sv_monsters.qh:5
IntrusiveList g_monsters
entity spawnmonster(entity e, string monster, Monster monster_id, entity spawnedby, entity own, vector orig, bool respwn, bool removeifinvalid, int moveflag)
Definition sv_spawn.qc:14
void spawner_use(entity this, entity actor, entity trigger)
Definition sv_spawner.qc:6
string spawnmob
Definition sv_spawner.qh:3