246 {
247 bool doTeleport, doSetDir;
248 vector pos, dir;
251
253 if (numbersPos.Count() != 0)
254 {
255 if (numbersPos.Count() == 1)
256 {
258 }
259 else if (numbersPos.Count() == 2)
260 {
261 pos =
Vector(numbersPos[0],
GetGame().SurfaceY(numbersPos[0], numbersPos[1]), numbersPos[1]);
262 }
263 else if (numbersPos.Count() <= 5)
264 {
265 pos =
Vector(numbersPos[0], numbersPos[1], numbersPos[2]);
266 }
267 else if (numbersPos.Count() > 5)
268 {
269 pos =
Vector(numbersPos[0], numbersPos[1], numbersPos[2]);
270 dir =
Vector(numbersPos[3], numbersPos[4], numbersPos[5]);
271
275
279
280 return;
281 }
282
283 doTeleport = true;
284 }
285 else
287
289 if (numbersDir.Count() != 0)
290 {
291 if (numbersDir.Count() == 1)
292 {
294 }
295 else if (numbersDir.Count() == 2)
296 {
297 dir =
Vector(numbersDir[0], 0, numbersDir[1]);
298 }
299 else if (numbersDir.Count() <= 5)
300 {
301 dir =
Vector(numbersDir[0], numbersDir[1], numbersDir[2]);
302 }
303 else if (numbersDir.Count() > 5)
304 {
305 pos =
Vector(numbersDir[0], numbersDir[1], numbersDir[2]);
306 dir =
Vector(numbersDir[3], numbersDir[4], numbersDir[5]);
307
311
315
316 return;
317 }
318
319 doSetDir = true;
320 }
321 else
323
324 if (doTeleport)
325 {
328 }
329
330 if (doSetDir)
331 {
334 }
335 }
EditBoxWidget m_TeleportXYZ
EditBoxWidget m_TeleportHeading
PluginDeveloper m_Developer
void Teleport(PlayerBase player, vector position)
array< float > TextToNumbersArray(string text)
proto native CGame GetGame()
proto native vector Vector(float x, float y, float z)
Vector constructor from components.