-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcontrols.lua
More file actions
129 lines (114 loc) · 4.93 KB
/
controls.lua
File metadata and controls
129 lines (114 loc) · 4.93 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
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
local Controls = {}
local key_pressed = {
w = false,
a = false,
s = false,
d = false,
up = false,
down = false,
left = false,
right = false
}
function Controls.load()
Controls.spriteSheet = love.graphics.newImage("assets/imgs/WASD.png")
Controls.quads = {
w_up = love.graphics.newQuad(0, 0, 16, 16, 128, 32),
w_down = love.graphics.newQuad(16, 0, 16, 16, 128, 32),
a_up = love.graphics.newQuad(32, 0, 16, 16, 128, 32),
a_down = love.graphics.newQuad(48, 0, 16, 16, 128, 32),
s_up = love.graphics.newQuad(64, 0, 16, 16, 128, 32),
s_down = love.graphics.newQuad(80, 0, 16, 16, 128, 32),
d_up = love.graphics.newQuad(96, 0, 16, 16, 128, 32),
d_down = love.graphics.newQuad(112, 0, 16, 16, 128, 32),
arrow_up_up = love.graphics.newQuad(0, 16, 16, 16, 128, 32),
arrow_up_down = love.graphics.newQuad(16, 16, 16, 16, 128, 32),
arrow_left_up = love.graphics.newQuad(32, 16, 16, 16, 128, 32),
arrow_left_down = love.graphics.newQuad(48, 16, 16, 16, 128, 32),
arrow_down_up = love.graphics.newQuad(64, 16, 16, 16, 128, 32),
arrow_down_down = love.graphics.newQuad(80, 16, 16, 16, 128, 32),
arrow_right_up = love.graphics.newQuad(96, 16, 16, 16, 128, 32),
arrow_right_down = love.graphics.newQuad(112, 16, 16, 16, 128, 32),
}
Controls.offset = { x = 0, y = 0 }
end
function Controls.update(camera_x, camera_y)
key_pressed.w = love.keyboard.isDown("w")
key_pressed.a = love.keyboard.isDown("a")
key_pressed.s = love.keyboard.isDown("s")
key_pressed.d = love.keyboard.isDown("d")
key_pressed.up = love.keyboard.isDown("up")
key_pressed.down = love.keyboard.isDown("down")
key_pressed.left = love.keyboard.isDown("left")
key_pressed.right = love.keyboard.isDown("right")
Controls.offset.x = camera_x
Controls.offset.y = camera_y
end
function Controls.draw_wasd(x, y)
Controls.draw_w(x, y)
Controls.draw_a(x - 64, y + 64)
Controls.draw_s(x, y + 64)
Controls.draw_d(x + 64, y + 64)
end
function Controls.draw_arrows(x, y)
Controls.draw_up(x, y)
Controls.draw_left(x - 64, y + 64)
Controls.draw_down(x, y + 64)
Controls.draw_right(x + 64, y + 64)
end
function Controls.draw_w(x, y)
if key_pressed.w then
love.graphics.draw(Controls.spriteSheet, Controls.quads.w_down, x + Controls.offset.x, y + Controls.offset.y, 0, 4, 4)
else
love.graphics.draw(Controls.spriteSheet, Controls.quads.w_up, x + Controls.offset.x, y + Controls.offset.y, 0, 4, 4)
end
end
function Controls.draw_a(x, y)
if key_pressed.a then
love.graphics.draw(Controls.spriteSheet, Controls.quads.a_down, x + Controls.offset.x, y + Controls.offset.y, 0, 4, 4)
else
love.graphics.draw(Controls.spriteSheet, Controls.quads.a_up, x + Controls.offset.x, y + Controls.offset.y, 0, 4, 4)
end
end
function Controls.draw_s(x, y)
if key_pressed.s then
love.graphics.draw(Controls.spriteSheet, Controls.quads.s_down, x + Controls.offset.x, y + Controls.offset.y, 0, 4, 4)
else
love.graphics.draw(Controls.spriteSheet, Controls.quads.s_up, x + Controls.offset.x, y + Controls.offset.y, 0, 4, 4)
end
end
function Controls.draw_d(x, y)
if key_pressed.d then
love.graphics.draw(Controls.spriteSheet, Controls.quads.d_down, x + Controls.offset.x, y + Controls.offset.y, 0, 4, 4)
else
love.graphics.draw(Controls.spriteSheet, Controls.quads.d_up, x + Controls.offset.x, y + Controls.offset.y, 0, 4, 4)
end
end
function Controls.draw_up(x, y)
if key_pressed.up then
love.graphics.draw(Controls.spriteSheet, Controls.quads.arrow_up_down, x + Controls.offset.x, y + Controls.offset.y, 0, 4, 4)
else
love.graphics.draw(Controls.spriteSheet, Controls.quads.arrow_up_up, x + Controls.offset.x, y + Controls.offset.y, 0, 4, 4)
end
end
function Controls.draw_left(x, y)
if key_pressed.left then
love.graphics.draw(Controls.spriteSheet, Controls.quads.arrow_left_down, x + Controls.offset.x, y + Controls.offset.y, 0, 4, 4)
else
love.graphics.draw(Controls.spriteSheet, Controls.quads.arrow_left_up, x + Controls.offset.x, y + Controls.offset.y, 0, 4, 4)
end
end
function Controls.draw_down(x, y)
if key_pressed.down then
love.graphics.draw(Controls.spriteSheet, Controls.quads.arrow_down_down, x + Controls.offset.x, y + Controls.offset.y, 0, 4, 4)
else
love.graphics.draw(Controls.spriteSheet, Controls.quads.arrow_down_up, x + Controls.offset.x, y + Controls.offset.y, 0, 4, 4)
end
end
function Controls.draw_right(x, y)
if key_pressed.right then
love.graphics.draw(Controls.spriteSheet, Controls.quads.arrow_right_down, x + Controls.offset.x, y + Controls.offset.y, 0, 4, 4)
else
love.graphics.draw(Controls.spriteSheet, Controls.quads.arrow_right_up, x + Controls.offset.x, y + Controls.offset.y, 0, 4, 4)
end
end
return Controls