-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.lua
57 lines (45 loc) · 1.54 KB
/
main.lua
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
local achievement = Sprite()
local gfxQueue = {}
local render = false
local setup = false
UILib = {
togglePause = require("pause.lua"),
_display = function()
if not setup then
setup = true
achievement:Load("gfx/ui/achievement/achievements.anm2", true)
end
if render then
if achievement:IsFinished("Appear") then
achievement:Play("Idle", true)
end
if achievement:IsFinished("Dissapear") then
render = false
-- Resume
local player = Isaac.GetPlayer(0)
player.ControlsEnabled = true
UILib.togglePause(false)
end
achievement:Update()
local roomCenter = (Game():GetRoom():GetRenderSurfaceTopLeft()*2 + Vector(442,286))/2 -- "Kube's magic formula" - Nine
achievement:Render(roomCenter, Vector(0, 0), Vector(0, 0))
end
end,
_preventDamage = function(_, tookDamage)
if render then
return false
end
end,
displayAchievement = function(gfx)
achievement:ReplaceSpritesheet(3, "gfx/ui/achievement/"..gfx)
achievement:LoadGraphics()
achievement:Play("Appear", true)
local player = Isaac.GetPlayer(0)
player.ControlsEnabled = false
render = true
UILib.togglePause(true)
end
}
local mod = RegisterMod("UILib", 1)
mod:AddCallback(ModCallbacks.MC_POST_RENDER, UILib._display)
mod:AddCallback(ModCallbacks.MC_ENTITY_TAKE_DMG, UILib._preventDamage)