2 void monster_changeteam()
4 self.glowmod = Team_ColorRGB(self.team - 1);
5 self.teamradar_color = Team_ColorRGB(self.team - 1);
8 self.colormap = 1024 + (self.team - 1) * 17;
15 MON_ACTION(self.monsterid, MR_DEATH);
17 self.solid = SOLID_CORPSE;
24 dt = time - self.move_time;
25 self.move_time = time;
29 fixedmakevectors(self.angles);
30 //movelib_groundalign4point(50, 25, 0.25, 45);
31 setorigin(self, self.origin + self.velocity * dt);
32 self.angles_y = self.move_angles_y;
35 void monster_construct()
38 entity mon = get_monsterinfo(self.monsterid);
43 self.netname = M_NAME(self.monsterid);
45 setorigin(self, self.origin);
46 setmodel(self, mon.model);
47 setsize(self, min_s, max_s);
49 self.move_movetype = MOVETYPE_BOUNCE;
51 self.solid = SOLID_BBOX;
52 self.movetype = MOVETYPE_BOUNCE;
53 self.move_origin = self.origin;
54 self.move_time = time;
55 self.drawmask = MASK_NORMAL;
57 self.draw = monster_draw;
67 self.monsterid = ReadByte();
69 self.origin_x = ReadCoord();
70 self.origin_y = ReadCoord();
71 self.origin_z = ReadCoord();
72 setorigin(self, self.origin);
74 self.angles_x = ReadAngle();
75 self.angles_y = ReadAngle();
77 self.skin = ReadByte();
78 self.team = ReadByte();
79 self.scale = ReadByte();
87 self.move_angles_x = ReadShort();
88 self.move_angles_y = ReadShort();
89 self.angles = self.move_angles;
94 self.origin_x = ReadShort();
95 self.origin_y = ReadShort();
96 self.origin_z = ReadShort();
97 setorigin(self, self.origin);
99 self.velocity_x = ReadShort();
100 self.velocity_y = ReadShort();
101 self.velocity_z = ReadShort();
103 self.move_angles_y = ReadShort();
105 self.move_time = time;
106 self.move_velocity = self.velocity;
107 self.move_origin = self.origin;
112 self.frame1time = ReadCoord();
113 self.frame = ReadByte();
118 self.skin = ReadByte();
122 if(_tmp != self.team)
125 monster_changeteam();
129 if(_tmp == 4) // respawning
130 setmodel(self, "null");
134 if(_tmp == 0 && self.health != 0)