8 InterpolateOrigin_Do();
14 if(self.lip < 0) // < 0: alpha goes from 1 to 1-|lip| when toggled (toggling subtracts lip)
15 self.alpha = 1 + self.lip * f;
16 else // > 0: alpha goes from 1-|lip| to 1 when toggled (toggling adds lip)
17 self.alpha = 1 - self.lip * (1 - f);
18 self.origin = self.origin + self.movedir * f;
30 void Ent_Wall_Remove()
33 strunzone(self.bgmscript);
34 self.bgmscript = string_null;
40 InterpolateOrigin_Undo();
41 self.iflags = IFLAG_ANGLES;
48 self.colormap = ReadShort();
55 self.origin_x = ReadCoord();
56 self.origin_y = ReadCoord();
57 self.origin_z = ReadCoord();
64 self.angles_x = ReadAngle();
65 self.angles_y = ReadAngle();
66 self.angles_z = ReadAngle();
69 self.angles = '0 0 0';
74 self.modelindex = ReadShort();
75 self.solid = ReadByte();
76 self.scale = ReadByte() / 16.0;
79 self.mins_x = ReadCoord();
80 self.mins_y = ReadCoord();
81 self.mins_z = ReadCoord();
82 self.maxs_x = ReadCoord();
83 self.maxs_y = ReadCoord();
84 self.maxs_z = ReadCoord();
87 self.mins = self.maxs = '0 0 0';
89 strunzone(self.bgmscript);
90 self.bgmscript = strzone(ReadString());
91 if(self.bgmscript != "")
93 self.bgmscriptattack = ReadByte() / 64.0;
94 self.bgmscriptdecay = ReadByte() / 64.0;
95 self.bgmscriptsustain = ReadByte() / 255.0;
96 self.bgmscriptrelease = ReadByte() / 64.0;
97 self.movedir_x = ReadCoord();
98 self.movedir_y = ReadCoord();
99 self.movedir_z = ReadCoord();
100 self.lip = ReadByte() / 255.0;
102 BGMScript_InitEntity(self);
105 InterpolateOrigin_Note();
107 self.entremove = Ent_Wall_Remove;
108 self.draw = Ent_Wall_Draw;