Uh oh!
There was an error while loading. Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathentityHandler.lua
More file actions
Latest commit
84 lines (71 loc) · 2.29 KB
/
Copy pathentityHandler.lua
File metadata and controls
84 lines (71 loc) · 2.29 KB
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
localIterableMap=require("include/IterableMap")
localutil=require("include/util")
localplatformUtilities=require("utilities/platformUtilities")
localportalUtilities=require("utilities/portalUtilities")
localbuttonUtilities=require("utilities/buttonUtilities")
localEntityDefs=util.LoadDefDirectory("defs/entities")
localNewEntity=require("objects/entity")
NewProp=util.LoadDefDirectory("objects/properties")
localself= {}
localapi= {}
functionapi.AddEntity(name, data)
localdef=EntityDefs[name]
IterableMap.Add(self.entities, NewEntity(data, def))
end
functionapi.HitTest(pos)
localhit=false
localfunctionRegisterHit(entity)
hit=entity
end
IterableMap.ApplySelf(self.entities, "HitTest", pos, RegisterHit)
returnhit
end
functionapi.RemoveEntitiesAtPos(pos)
IterableMap.ApplySelf(self.entities, "DeleteIfHit", pos)
end
functionapi.LoadLevelItems(triggers, items)
fori=1, #items.protoCollisionsdo
localproto=items.protoCollisions[i]
api.AddEntity("platform", platformUtilities.LoadPlatform(proto, i, triggers))
end
fori=1, #items.protoPortalsdo
localproto=items.protoPortals[i]
api.AddEntity("portal", portalUtilities.LoadPortal(proto, i, triggers))
end
fori=1, #items.protoButtonsdo
localproto=items.protoButtons[i]
localbuttonType, buttonData=buttonUtilities.LoadButton(proto, triggers)
api.AddEntity(buttonType, buttonData)
end
fori=1, #items.protoMutatorsdo
localproto=items.protoMutators[i]
ifproto.btsType=="pickup" then
localdata= {
pos= {proto.attachment.xOffset, proto.attachment.yOffset},
width=proto.width,
height=proto.height,
timeDirection=proto.timeDirection,
pickupType=proto.pickupType,
triggerName=IndexNameHandler.GetOrMakeTriggerName(proto.triggerID, proto.btsType),
-- Attachment ID
}
api.AddEntity("pickup", data)
end
end
end
functionapi.Update(dt)
--IterableMap.ApplySelf(self.entities, "Update", dt)
end
functionapi.Draw(drawQueue)
IterableMap.ApplySelf(self.entities, "Draw", drawQueue)
end
functionapi.DeleteAll()
self.entities=IterableMap.New()
end
functionapi.Initialize(world)
self= {
entities=IterableMap.New(),
world=world,
}
end
returnapi