PICO-8 按下按钮只显示一次文本输出?
PICO-8 making a button press show an output of text only once?
我是 Lua
、PICO-8
和一般编码的完全新手。我在使用第一个程序中的函数时遇到了问题。文本都是占位符,一旦我正确理解代码,我就会更改它。
基本上,在 _init()
之前,我定义了一个函数 ow()
,我在其中按下按钮,程序显示文本 "ow." 我将函数名称放在 _update()
这样它将以 30x/秒的速度更新以查看按钮是否被按下;然而,这使得 "ow" 每秒出现 30 次(或者无论按钮被按下多长时间),而不是在我最初按下按钮时出现一次。我该如何解决?提前感谢大家对一个新coder的问题的包容。这是我的代码:
function ow()
if btn((X))
then print "ow"
--how do i make it do this
--only once?
end
end
function _init()
print "hello."
print "i have been waiting for you."
end
function _update()
ow()
end
function _draw()
end
您需要一个全局变量来保存按钮之前的状态。
function ow()
if btn((X)) then
if not button_was_pressed then
button_was_pressed = true
print "ow"
end
else
button_was_pressed = false
end
end
我是 Lua
、PICO-8
和一般编码的完全新手。我在使用第一个程序中的函数时遇到了问题。文本都是占位符,一旦我正确理解代码,我就会更改它。
基本上,在 _init()
之前,我定义了一个函数 ow()
,我在其中按下按钮,程序显示文本 "ow." 我将函数名称放在 _update()
这样它将以 30x/秒的速度更新以查看按钮是否被按下;然而,这使得 "ow" 每秒出现 30 次(或者无论按钮被按下多长时间),而不是在我最初按下按钮时出现一次。我该如何解决?提前感谢大家对一个新coder的问题的包容。这是我的代码:
function ow()
if btn((X))
then print "ow"
--how do i make it do this
--only once?
end
end
function _init()
print "hello."
print "i have been waiting for you."
end
function _update()
ow()
end
function _draw()
end
您需要一个全局变量来保存按钮之前的状态。
function ow()
if btn((X)) then
if not button_was_pressed then
button_was_pressed = true
print "ow"
end
else
button_was_pressed = false
end
end