blob: 77bb6994a8089e31b5323033cccd12c6bc19afe6 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
NAME(teleport);
PARENT(trigger);
INIT {
super("init");
super("target");
}
ENTER {
Entity *player = g_get_entity("player");
assert(player != nullptr);
Entity *target = nullptr;
repeat(i, MAX_ENTITIES) {
auto e = &g->entities[i];
if (e->table && e->visible &&
entity_in_group(e, this->target)) {
target = e;
break;
}
}
assert(target != nullptr);
if (this->do_x)
player->pos.x = target->pos.x;
if (this->do_y)
player->pos.y = target->pos.y;
}
|