1 entity spawnmonster (string monster, float monster_id, entity spawnedby, entity own, vector orig, float respwn, float moveflag)
3 // ensure spawnfunc database is initialized
8 e.spawnflags = MONSTERFLAG_SPAWNED;
11 e.spawnflags |= MONSTERFLAG_NORESPAWN;
19 for(i = MON_FIRST; i <= MON_LAST; ++i)
21 mon = get_monsterinfo(i);
22 if(mon.netname == monster)
29 monster = (get_monsterinfo(MON_FIRST)).netname;
34 monster = (get_monsterinfo(monster_id)).netname;
36 e.realowner = spawnedby;
39 e.monster_moveflags = moveflag;
41 if(IS_PLAYER(spawnedby))
43 if(teamplay && autocvar_g_monsters_teams)
44 e.team = spawnedby.team; // colors handled in spawn code
46 if(autocvar_g_monsters_owners)
47 e.monster_owner = own; // using .owner makes the monster non-solid for its master
49 e.angles = spawnedby.angles;
52 monster = strcat("$ spawnfunc_monster_", monster);
54 target_spawn_edit_entity(e, monster, world, world, world, world, world);