I made a version of the YCTP from Baldi's basics in Lua
https://preview.redd.it/1yebx16308xd1.png?width=1920&format=png&auto=webp&s=bb38973f01f9a21970bcbba11df637b6d269e4e3
print("Problem One, 7+2=?")
Answer = io.read("n")
if Answer == 9 then
print("Great job!")
print("Problem two, 2+3=?")
end
Answertwo = io.read("n")
if Answertwo == 5 then
print("You might be smarter than me!")
print("Problem two, 4-1=?")
end
Answerthree = io.read("n")
if Answerthree == 3 then
print("Wow, you exsist")
end
https://redd.it/1gd2cs6
@r_lua
https://preview.redd.it/1yebx16308xd1.png?width=1920&format=png&auto=webp&s=bb38973f01f9a21970bcbba11df637b6d269e4e3
print("Problem One, 7+2=?")
Answer = io.read("n")
if Answer == 9 then
print("Great job!")
print("Problem two, 2+3=?")
end
Answertwo = io.read("n")
if Answertwo == 5 then
print("You might be smarter than me!")
print("Problem two, 4-1=?")
end
Answerthree = io.read("n")
if Answerthree == 3 then
print("Wow, you exsist")
end
https://redd.it/1gd2cs6
@r_lua
finding better syntax
>< ideal >
if mission_temp.reward[index_mission\] == (nil or 0)
>< real >
if mission_temp.reward[index_mission\] == nil or mission_temp.reward[index_mission\] == 0
how can you deal with?
https://redd.it/1gdjpbu
@r_lua
>< ideal >
if mission_temp.reward[index_mission\] == (nil or 0)
>< real >
if mission_temp.reward[index_mission\] == nil or mission_temp.reward[index_mission\] == 0
how can you deal with?
https://redd.it/1gdjpbu
@r_lua
Reddit
From the lua community on Reddit
Explore this post and more from the lua community
PLEASE HELP MEEEEEEEEEEEEEE
function love.load()
math.randomseed(os.time())
love.window.setFullscreen(true)
bullets = {}
player = {}
player.width = 25
player.height = 25
player.x = love.graphics.getWidth() / 2 - player.width / 2
player.y = love.graphics.getHeight() / 2 - player.height / 2
player.speed = 350
gun = {}
gun.width = 15
gun.height = 10
gun.x = player.x + player.width
gun.y = player.y + player.height / 2 - gun.height / 2
gun.speed = player.speed
count = 0
fireRateCount = 0
fireRateTimer = 1
bulletdirection = "right"
gundirection = "right"
wave = 0
enemies = {}
kills = 0
gameOver = false
pierceshot = false
upgrades = {"piercing","bulletspeed","playerspeed","bulletdamage"}
upgrade = 0
bulletspeed = 500
bulletdamage = 1
waveupdate()
end
function love.update(dt)
if #enemies == 0 and wave > 0 then
upgradeSelect()
waveupdate()
end
count = count + dt
fireRateCount = fireRateCount + dt
if fireRateCount >= fireRateTimer then
createBullet()
fireRateCount = 0
end
--enemy movement
for i, v in ipairs(enemies) do
if v.x >= player.x - 10 and v.x <= player.x + 10 then
v.x = v.x + v.closehorspeed * dt
elseif v.x < player.x then
v.x = v.x + v.horspeed dt
elseif v.x > player.x then
v.x = v.x - v.hor_speed dt
end
if v.y >= player.y - 10 and v.y <= player.y + 10 then
v.y = v.y + v.closevertspeed dt
elseif v.y < player.y then
v.y = v.y + v.vert_speed dt
elseif v.y > player.y then
v.y = v.y - v.vertspeed * dt
end
end
for i in ipairs(enemies) do
if checkCollision(player,enemies[i]) == true then
gameOver = true
end
end
for e = #enemies, 1, -1 do
for i = #bullets, 1, -1 do
if checkCollision(bullets[i],enemies[e]) == true and enemies[e].hit == false then
enemies[e].health = enemies[e].health - bullets[i].damage
enemies[e].hit = true
elseif not checkCollision(bullets[i],enemies[e]) then
enemies[e].hit = false
end
if enemies[e].health <= 0 then
table.remove(enemies,e)
kills = kills + 1
end
if pierceshot == false then
table.remove(bullets,i)
elseif checkCollision(bulletsi,enemiese) == false then
enemiese.istouching = false
bullets[i].istouching = false
end
break
end
end
for i = #bullets, 1, -1 do
if bulletsi.y <= 0 then
table.remove(bullets,i)
elseif bulletsi.x <= 0 then
table.remove(bullets,i)
elseif bulletsi.y >= love.graphics.getHeight() - bulletsi.height then
table.remove(bullets,i)
elseif bulletsi.x >= love.graphics.getWidth() - bulletsi.width then
table.remove(bullets,i)
end
end
--player movement
if love.keyboard.isDown("w") then
player.y = player.y - player.speed dt
gun.y = gun.y - gun.speed dt
end
if love.keyboard.isDown("s") then
player.y = player.y + player.speed dt
gun.y = gun.y + gun.speed dt
end
if love.keyboard.isDown("a") then
player.x = player.x - player.speed dt
gun.x = gun.x - gun.speed dt
end
if love.keyboard.isDown("d") then
player.x = player.x + player.speed dt
gun.x = gun.x + gun.speed dt
end
love.keypressed(key)
for i, v in ipairs(bullets) do
if v.direction == "up" then
v.y = v.y - v.speed dt
elseif v.direction == "right" then
v.x = v.x + v.speed dt
elseif v.direction == "down" then
function love.load()
math.randomseed(os.time())
love.window.setFullscreen(true)
bullets = {}
player = {}
player.width = 25
player.height = 25
player.x = love.graphics.getWidth() / 2 - player.width / 2
player.y = love.graphics.getHeight() / 2 - player.height / 2
player.speed = 350
gun = {}
gun.width = 15
gun.height = 10
gun.x = player.x + player.width
gun.y = player.y + player.height / 2 - gun.height / 2
gun.speed = player.speed
count = 0
fireRateCount = 0
fireRateTimer = 1
bulletdirection = "right"
gundirection = "right"
wave = 0
enemies = {}
kills = 0
gameOver = false
pierceshot = false
upgrades = {"piercing","bulletspeed","playerspeed","bulletdamage"}
upgrade = 0
bulletspeed = 500
bulletdamage = 1
waveupdate()
end
function love.update(dt)
if #enemies == 0 and wave > 0 then
upgradeSelect()
waveupdate()
end
count = count + dt
fireRateCount = fireRateCount + dt
if fireRateCount >= fireRateTimer then
createBullet()
fireRateCount = 0
end
--enemy movement
for i, v in ipairs(enemies) do
if v.x >= player.x - 10 and v.x <= player.x + 10 then
v.x = v.x + v.closehorspeed * dt
elseif v.x < player.x then
v.x = v.x + v.horspeed dt
elseif v.x > player.x then
v.x = v.x - v.hor_speed dt
end
if v.y >= player.y - 10 and v.y <= player.y + 10 then
v.y = v.y + v.closevertspeed dt
elseif v.y < player.y then
v.y = v.y + v.vert_speed dt
elseif v.y > player.y then
v.y = v.y - v.vertspeed * dt
end
end
for i in ipairs(enemies) do
if checkCollision(player,enemies[i]) == true then
gameOver = true
end
end
for e = #enemies, 1, -1 do
for i = #bullets, 1, -1 do
if checkCollision(bullets[i],enemies[e]) == true and enemies[e].hit == false then
enemies[e].health = enemies[e].health - bullets[i].damage
enemies[e].hit = true
elseif not checkCollision(bullets[i],enemies[e]) then
enemies[e].hit = false
end
if enemies[e].health <= 0 then
table.remove(enemies,e)
kills = kills + 1
end
if pierceshot == false then
table.remove(bullets,i)
elseif checkCollision(bulletsi,enemiese) == false then
enemiese.istouching = false
bullets[i].istouching = false
end
break
end
end
for i = #bullets, 1, -1 do
if bulletsi.y <= 0 then
table.remove(bullets,i)
elseif bulletsi.x <= 0 then
table.remove(bullets,i)
elseif bulletsi.y >= love.graphics.getHeight() - bulletsi.height then
table.remove(bullets,i)
elseif bulletsi.x >= love.graphics.getWidth() - bulletsi.width then
table.remove(bullets,i)
end
end
--player movement
if love.keyboard.isDown("w") then
player.y = player.y - player.speed dt
gun.y = gun.y - gun.speed dt
end
if love.keyboard.isDown("s") then
player.y = player.y + player.speed dt
gun.y = gun.y + gun.speed dt
end
if love.keyboard.isDown("a") then
player.x = player.x - player.speed dt
gun.x = gun.x - gun.speed dt
end
if love.keyboard.isDown("d") then
player.x = player.x + player.speed dt
gun.x = gun.x + gun.speed dt
end
love.keypressed(key)
for i, v in ipairs(bullets) do
if v.direction == "up" then
v.y = v.y - v.speed dt
elseif v.direction == "right" then
v.x = v.x + v.speed dt
elseif v.direction == "down" then
v.y = v.y + v.speed dt
elseif v.direction == "left" then
v.x = v.x - v.speed dt
end
end
if player.x < 0 then
player.x = 0
if gundirection == "left" then
gun.x = 0 - gun.width
elseif gundirection == "right" then
gun.x = 0 + player.width
elseif gundirection == "down" then
gun.x = player.x + player.width / 2 - gun.width / 2
elseif gundirection == "up" then
gun.x = player.x + player.width / 2 - gun.width / 2
end
elseif player.x + player.width > love.graphics.getWidth() then
player.x = love.graphics.getWidth() - player.width
if gundirection == "right" then
gun.x = love.graphics.getWidth()
elseif gundirection == "left" then
gun.x = love.graphics.getWidth() - player.width - gun.width
elseif gundirection == "down" then
gun.x = player.x + player.width / 2 - gun.width / 2
elseif gundirection == "up" then
gun.x = player.x + player.width / 2 - gun.width / 2
end
end
if player.y < 0 then
player.y = 0
if gundirection == "up" then
gun.y = 0 - gun.height
elseif gundirection == "down" then
gun.y = 0 + player.height
elseif gundirection == "right" then
gun.y = player.y + player.height / 2 - gun.height / 2
elseif gundirection == "left" then
gun.y = player.y + player.height / 2 - gun.height / 2
end
elseif player.y + player.height > love.graphics.getHeight() then
player.y = love.graphics.getHeight() - player.height
if gundirection == "down" then
gun.y = love.graphics.getHeight()
elseif gundirection == "up" then
gun.y = love.graphics.getHeight() - player.height - gun.height
elseif gundirection == "right" then
gun.y = player.y + player.height / 2 - gun.height / 2
elseif gundirection == "left" then
gun.y = player.y + player.height / 2 - gun.height / 2
end
end
end
function love.draw()
love.graphics.setColor(1,1,1)
love.graphics.print("Kills: "..kills,love.graphics.getWidth() / 2, 100)
love.graphics.print("Bullet speed:"..bulletspeed, 0, 20)
love.graphics.print("Player speed:"..player.speed, 0, 40)
love.graphics.print("Bullet damage:"..bulletdamage, 0, 60)
if pierceshot == true then
love.graphics.print("Piercing shot: active", 0, 80)
elseif pierceshot == false then
love.graphics.print("Piercing shot: inactive", 0, 80)
end
if gameOver == false then
love.graphics.rectangle("fill", player.x, player.y, player.width, player.height)
love.graphics.rectangle("fill", gun.x, gun.y, gun.width, gun.height)
for i, v in ipairs(bullets) do
love.graphics.rectangle("fill", v.x - v.xorigin, v.y - v.yorigin, v.width, v.height)
end
for i, v in ipairs(enemies) do
love.graphics.setColor(1,0,0)
love.graphics.rectangle("fill",v.x,v.y,v.width,v.height)
love.graphics.setColor(0,0,0)
love.graphics.print(v.health,v.x,v.y)
end
elseif gameOver == true then
love.graphics.print("Game Over!", love.graphics.getWidth() / 2,love.graphics.getHeight() / 2)
end
end
function love.keypressed(key)
local turntimer = 0.1
if key == "down" and count >= turntimer then
count = 0
gun.width = 10
gun.height = 15
gun.x = player.x + player.width / 2 - gun.width / 2
gun.y = player.y + player.height
bulletdirection = "down"
gundirection = bulletdirection
elseif key == "right" and count >= turntimer then
count = 0
gun.width = 15
gun.height = 10
gun.x = player.x + player.width
gun.y = player.y + player.height / 2 - gun.height / 2
elseif v.direction == "left" then
v.x = v.x - v.speed dt
end
end
if player.x < 0 then
player.x = 0
if gundirection == "left" then
gun.x = 0 - gun.width
elseif gundirection == "right" then
gun.x = 0 + player.width
elseif gundirection == "down" then
gun.x = player.x + player.width / 2 - gun.width / 2
elseif gundirection == "up" then
gun.x = player.x + player.width / 2 - gun.width / 2
end
elseif player.x + player.width > love.graphics.getWidth() then
player.x = love.graphics.getWidth() - player.width
if gundirection == "right" then
gun.x = love.graphics.getWidth()
elseif gundirection == "left" then
gun.x = love.graphics.getWidth() - player.width - gun.width
elseif gundirection == "down" then
gun.x = player.x + player.width / 2 - gun.width / 2
elseif gundirection == "up" then
gun.x = player.x + player.width / 2 - gun.width / 2
end
end
if player.y < 0 then
player.y = 0
if gundirection == "up" then
gun.y = 0 - gun.height
elseif gundirection == "down" then
gun.y = 0 + player.height
elseif gundirection == "right" then
gun.y = player.y + player.height / 2 - gun.height / 2
elseif gundirection == "left" then
gun.y = player.y + player.height / 2 - gun.height / 2
end
elseif player.y + player.height > love.graphics.getHeight() then
player.y = love.graphics.getHeight() - player.height
if gundirection == "down" then
gun.y = love.graphics.getHeight()
elseif gundirection == "up" then
gun.y = love.graphics.getHeight() - player.height - gun.height
elseif gundirection == "right" then
gun.y = player.y + player.height / 2 - gun.height / 2
elseif gundirection == "left" then
gun.y = player.y + player.height / 2 - gun.height / 2
end
end
end
function love.draw()
love.graphics.setColor(1,1,1)
love.graphics.print("Kills: "..kills,love.graphics.getWidth() / 2, 100)
love.graphics.print("Bullet speed:"..bulletspeed, 0, 20)
love.graphics.print("Player speed:"..player.speed, 0, 40)
love.graphics.print("Bullet damage:"..bulletdamage, 0, 60)
if pierceshot == true then
love.graphics.print("Piercing shot: active", 0, 80)
elseif pierceshot == false then
love.graphics.print("Piercing shot: inactive", 0, 80)
end
if gameOver == false then
love.graphics.rectangle("fill", player.x, player.y, player.width, player.height)
love.graphics.rectangle("fill", gun.x, gun.y, gun.width, gun.height)
for i, v in ipairs(bullets) do
love.graphics.rectangle("fill", v.x - v.xorigin, v.y - v.yorigin, v.width, v.height)
end
for i, v in ipairs(enemies) do
love.graphics.setColor(1,0,0)
love.graphics.rectangle("fill",v.x,v.y,v.width,v.height)
love.graphics.setColor(0,0,0)
love.graphics.print(v.health,v.x,v.y)
end
elseif gameOver == true then
love.graphics.print("Game Over!", love.graphics.getWidth() / 2,love.graphics.getHeight() / 2)
end
end
function love.keypressed(key)
local turntimer = 0.1
if key == "down" and count >= turntimer then
count = 0
gun.width = 10
gun.height = 15
gun.x = player.x + player.width / 2 - gun.width / 2
gun.y = player.y + player.height
bulletdirection = "down"
gundirection = bulletdirection
elseif key == "right" and count >= turntimer then
count = 0
gun.width = 15
gun.height = 10
gun.x = player.x + player.width
gun.y = player.y + player.height / 2 - gun.height / 2
PLEASE HELP MEEEEEEEEEEEEEE
function love.load()
math.randomseed(os.time())
love.window.setFullscreen(true)
bullets = {}
player = {}
player.width = 25
player.height = 25
player.x = love.graphics.getWidth() / 2 - player.width / 2
player.y = love.graphics.getHeight() / 2 - player.height / 2
player.speed = 350
gun = {}
gun.width = 15
gun.height = 10
gun.x = player.x + player.width
gun.y = player.y + player.height / 2 - gun.height / 2
gun.speed = player.speed
count = 0
fireRateCount = 0
fireRateTimer = 1
bullet_direction = "right"
gun_direction = "right"
wave = 0
enemies = {}
kills = 0
gameOver = false
pierce_shot = false
upgrades = {"piercing","bulletspeed","playerspeed","bulletdamage"}
upgrade = 0
bullet_speed = 500
bullet_damage = 1
wave_update()
end
function love.update(dt)
if #enemies == 0 and wave > 0 then
upgradeSelect()
wave_update()
end
count = count + dt
fireRateCount = fireRateCount + dt
if fireRateCount >= fireRateTimer then
createBullet()
fireRateCount = 0
end
--enemy movement
for i, v in ipairs(enemies) do
if v.x >= player.x - 10 and v.x <= player.x + 10 then
v.x = v.x + v.close_hor_speed * dt
elseif v.x < player.x then
v.x = v.x + v.hor_speed * dt
elseif v.x > player.x then
v.x = v.x - v.hor_speed * dt
end
if v.y >= player.y - 10 and v.y <= player.y + 10 then
v.y = v.y + v.close_vert_speed * dt
elseif v.y < player.y then
v.y = v.y + v.vert_speed * dt
elseif v.y > player.y then
v.y = v.y - v.vert_speed * dt
end
end
for i in ipairs(enemies) do
if checkCollision(player,enemies[i]) == true then
gameOver = true
end
end
for e = #enemies, 1, -1 do
for i = #bullets, 1, -1 do
if checkCollision(bullets[i],enemies[e]) == true and enemies[e].hit == false then
enemies[e].health = enemies[e].health - bullets[i].damage
enemies[e].hit = true
elseif not checkCollision(bullets[i],enemies[e]) then
enemies[e].hit = false
end
if enemies[e].health <= 0 then
table.remove(enemies,e)
kills = kills + 1
end
if pierce_shot == false then
table.remove(bullets,i)
elseif checkCollision(bullets[i],enemies[e]) == false then
enemies[e].is_touching = false
bullets[i].is_touching = false
end
break
end
end
for i = #bullets, 1, -1 do
if bullets[i].y <= 0 then
table.remove(bullets,i)
elseif bullets[i].x <= 0 then
table.remove(bullets,i)
elseif bullets[i].y >= love.graphics.getHeight() - bullets[i].height then
table.remove(bullets,i)
elseif bullets[i].x >= love.graphics.getWidth() - bullets[i].width then
table.remove(bullets,i)
end
end
--player movement
if love.keyboard.isDown("w") then
player.y = player.y - player.speed * dt
gun.y = gun.y - gun.speed * dt
end
if love.keyboard.isDown("s") then
player.y = player.y + player.speed * dt
gun.y = gun.y + gun.speed * dt
end
if love.keyboard.isDown("a") then
player.x = player.x - player.speed * dt
gun.x = gun.x - gun.speed * dt
end
if love.keyboard.isDown("d") then
player.x = player.x + player.speed * dt
gun.x = gun.x + gun.speed * dt
end
love.keypressed(key)
for i, v in ipairs(bullets) do
if v.direction == "up" then
v.y = v.y - v.speed * dt
elseif v.direction == "right" then
v.x = v.x + v.speed * dt
elseif v.direction == "down" then
function love.load()
math.randomseed(os.time())
love.window.setFullscreen(true)
bullets = {}
player = {}
player.width = 25
player.height = 25
player.x = love.graphics.getWidth() / 2 - player.width / 2
player.y = love.graphics.getHeight() / 2 - player.height / 2
player.speed = 350
gun = {}
gun.width = 15
gun.height = 10
gun.x = player.x + player.width
gun.y = player.y + player.height / 2 - gun.height / 2
gun.speed = player.speed
count = 0
fireRateCount = 0
fireRateTimer = 1
bullet_direction = "right"
gun_direction = "right"
wave = 0
enemies = {}
kills = 0
gameOver = false
pierce_shot = false
upgrades = {"piercing","bulletspeed","playerspeed","bulletdamage"}
upgrade = 0
bullet_speed = 500
bullet_damage = 1
wave_update()
end
function love.update(dt)
if #enemies == 0 and wave > 0 then
upgradeSelect()
wave_update()
end
count = count + dt
fireRateCount = fireRateCount + dt
if fireRateCount >= fireRateTimer then
createBullet()
fireRateCount = 0
end
--enemy movement
for i, v in ipairs(enemies) do
if v.x >= player.x - 10 and v.x <= player.x + 10 then
v.x = v.x + v.close_hor_speed * dt
elseif v.x < player.x then
v.x = v.x + v.hor_speed * dt
elseif v.x > player.x then
v.x = v.x - v.hor_speed * dt
end
if v.y >= player.y - 10 and v.y <= player.y + 10 then
v.y = v.y + v.close_vert_speed * dt
elseif v.y < player.y then
v.y = v.y + v.vert_speed * dt
elseif v.y > player.y then
v.y = v.y - v.vert_speed * dt
end
end
for i in ipairs(enemies) do
if checkCollision(player,enemies[i]) == true then
gameOver = true
end
end
for e = #enemies, 1, -1 do
for i = #bullets, 1, -1 do
if checkCollision(bullets[i],enemies[e]) == true and enemies[e].hit == false then
enemies[e].health = enemies[e].health - bullets[i].damage
enemies[e].hit = true
elseif not checkCollision(bullets[i],enemies[e]) then
enemies[e].hit = false
end
if enemies[e].health <= 0 then
table.remove(enemies,e)
kills = kills + 1
end
if pierce_shot == false then
table.remove(bullets,i)
elseif checkCollision(bullets[i],enemies[e]) == false then
enemies[e].is_touching = false
bullets[i].is_touching = false
end
break
end
end
for i = #bullets, 1, -1 do
if bullets[i].y <= 0 then
table.remove(bullets,i)
elseif bullets[i].x <= 0 then
table.remove(bullets,i)
elseif bullets[i].y >= love.graphics.getHeight() - bullets[i].height then
table.remove(bullets,i)
elseif bullets[i].x >= love.graphics.getWidth() - bullets[i].width then
table.remove(bullets,i)
end
end
--player movement
if love.keyboard.isDown("w") then
player.y = player.y - player.speed * dt
gun.y = gun.y - gun.speed * dt
end
if love.keyboard.isDown("s") then
player.y = player.y + player.speed * dt
gun.y = gun.y + gun.speed * dt
end
if love.keyboard.isDown("a") then
player.x = player.x - player.speed * dt
gun.x = gun.x - gun.speed * dt
end
if love.keyboard.isDown("d") then
player.x = player.x + player.speed * dt
gun.x = gun.x + gun.speed * dt
end
love.keypressed(key)
for i, v in ipairs(bullets) do
if v.direction == "up" then
v.y = v.y - v.speed * dt
elseif v.direction == "right" then
v.x = v.x + v.speed * dt
elseif v.direction == "down" then
v.y = v.y + v.speed * dt
elseif v.direction == "left" then
v.x = v.x - v.speed * dt
end
end
if player.x < 0 then
player.x = 0
if gun_direction == "left" then
gun.x = 0 - gun.width
elseif gun_direction == "right" then
gun.x = 0 + player.width
elseif gun_direction == "down" then
gun.x = player.x + player.width / 2 - gun.width / 2
elseif gun_direction == "up" then
gun.x = player.x + player.width / 2 - gun.width / 2
end
elseif player.x + player.width > love.graphics.getWidth() then
player.x = love.graphics.getWidth() - player.width
if gun_direction == "right" then
gun.x = love.graphics.getWidth()
elseif gun_direction == "left" then
gun.x = love.graphics.getWidth() - player.width - gun.width
elseif gun_direction == "down" then
gun.x = player.x + player.width / 2 - gun.width / 2
elseif gun_direction == "up" then
gun.x = player.x + player.width / 2 - gun.width / 2
end
end
if player.y < 0 then
player.y = 0
if gun_direction == "up" then
gun.y = 0 - gun.height
elseif gun_direction == "down" then
gun.y = 0 + player.height
elseif gun_direction == "right" then
gun.y = player.y + player.height / 2 - gun.height / 2
elseif gun_direction == "left" then
gun.y = player.y + player.height / 2 - gun.height / 2
end
elseif player.y + player.height > love.graphics.getHeight() then
player.y = love.graphics.getHeight() - player.height
if gun_direction == "down" then
gun.y = love.graphics.getHeight()
elseif gun_direction == "up" then
gun.y = love.graphics.getHeight() - player.height - gun.height
elseif gun_direction == "right" then
gun.y = player.y + player.height / 2 - gun.height / 2
elseif gun_direction == "left" then
gun.y = player.y + player.height / 2 - gun.height / 2
end
end
end
function love.draw()
love.graphics.setColor(1,1,1)
love.graphics.print("Kills: "..kills,love.graphics.getWidth() / 2, 100)
love.graphics.print("Bullet speed:"..bullet_speed, 0, 20)
love.graphics.print("Player speed:"..player.speed, 0, 40)
love.graphics.print("Bullet damage:"..bullet_damage, 0, 60)
if pierce_shot == true then
love.graphics.print("Piercing shot: active", 0, 80)
elseif pierce_shot == false then
love.graphics.print("Piercing shot: inactive", 0, 80)
end
if gameOver == false then
love.graphics.rectangle("fill", player.x, player.y, player.width, player.height)
love.graphics.rectangle("fill", gun.x, gun.y, gun.width, gun.height)
for i, v in ipairs(bullets) do
love.graphics.rectangle("fill", v.x - v.x_origin, v.y - v.y_origin, v.width, v.height)
end
for i, v in ipairs(enemies) do
love.graphics.setColor(1,0,0)
love.graphics.rectangle("fill",v.x,v.y,v.width,v.height)
love.graphics.setColor(0,0,0)
love.graphics.print(v.health,v.x,v.y)
end
elseif gameOver == true then
love.graphics.print("Game Over!", love.graphics.getWidth() / 2,love.graphics.getHeight() / 2)
end
end
function love.keypressed(key)
local turn_timer = 0.1
if key == "down" and count >= turn_timer then
count = 0
gun.width = 10
gun.height = 15
gun.x = player.x + player.width / 2 - gun.width / 2
gun.y = player.y + player.height
bullet_direction = "down"
gun_direction = bullet_direction
elseif key == "right" and count >= turn_timer then
count = 0
gun.width = 15
gun.height = 10
gun.x = player.x + player.width
gun.y = player.y + player.height / 2 - gun.height / 2
elseif v.direction == "left" then
v.x = v.x - v.speed * dt
end
end
if player.x < 0 then
player.x = 0
if gun_direction == "left" then
gun.x = 0 - gun.width
elseif gun_direction == "right" then
gun.x = 0 + player.width
elseif gun_direction == "down" then
gun.x = player.x + player.width / 2 - gun.width / 2
elseif gun_direction == "up" then
gun.x = player.x + player.width / 2 - gun.width / 2
end
elseif player.x + player.width > love.graphics.getWidth() then
player.x = love.graphics.getWidth() - player.width
if gun_direction == "right" then
gun.x = love.graphics.getWidth()
elseif gun_direction == "left" then
gun.x = love.graphics.getWidth() - player.width - gun.width
elseif gun_direction == "down" then
gun.x = player.x + player.width / 2 - gun.width / 2
elseif gun_direction == "up" then
gun.x = player.x + player.width / 2 - gun.width / 2
end
end
if player.y < 0 then
player.y = 0
if gun_direction == "up" then
gun.y = 0 - gun.height
elseif gun_direction == "down" then
gun.y = 0 + player.height
elseif gun_direction == "right" then
gun.y = player.y + player.height / 2 - gun.height / 2
elseif gun_direction == "left" then
gun.y = player.y + player.height / 2 - gun.height / 2
end
elseif player.y + player.height > love.graphics.getHeight() then
player.y = love.graphics.getHeight() - player.height
if gun_direction == "down" then
gun.y = love.graphics.getHeight()
elseif gun_direction == "up" then
gun.y = love.graphics.getHeight() - player.height - gun.height
elseif gun_direction == "right" then
gun.y = player.y + player.height / 2 - gun.height / 2
elseif gun_direction == "left" then
gun.y = player.y + player.height / 2 - gun.height / 2
end
end
end
function love.draw()
love.graphics.setColor(1,1,1)
love.graphics.print("Kills: "..kills,love.graphics.getWidth() / 2, 100)
love.graphics.print("Bullet speed:"..bullet_speed, 0, 20)
love.graphics.print("Player speed:"..player.speed, 0, 40)
love.graphics.print("Bullet damage:"..bullet_damage, 0, 60)
if pierce_shot == true then
love.graphics.print("Piercing shot: active", 0, 80)
elseif pierce_shot == false then
love.graphics.print("Piercing shot: inactive", 0, 80)
end
if gameOver == false then
love.graphics.rectangle("fill", player.x, player.y, player.width, player.height)
love.graphics.rectangle("fill", gun.x, gun.y, gun.width, gun.height)
for i, v in ipairs(bullets) do
love.graphics.rectangle("fill", v.x - v.x_origin, v.y - v.y_origin, v.width, v.height)
end
for i, v in ipairs(enemies) do
love.graphics.setColor(1,0,0)
love.graphics.rectangle("fill",v.x,v.y,v.width,v.height)
love.graphics.setColor(0,0,0)
love.graphics.print(v.health,v.x,v.y)
end
elseif gameOver == true then
love.graphics.print("Game Over!", love.graphics.getWidth() / 2,love.graphics.getHeight() / 2)
end
end
function love.keypressed(key)
local turn_timer = 0.1
if key == "down" and count >= turn_timer then
count = 0
gun.width = 10
gun.height = 15
gun.x = player.x + player.width / 2 - gun.width / 2
gun.y = player.y + player.height
bullet_direction = "down"
gun_direction = bullet_direction
elseif key == "right" and count >= turn_timer then
count = 0
gun.width = 15
gun.height = 10
gun.x = player.x + player.width
gun.y = player.y + player.height / 2 - gun.height / 2
bullet_direction = "right"
gun_direction = bullet_direction
elseif key == "up" and count >= turn_timer then
count = 0
gun.width = 10
gun.height = 15
gun.x = player.x + player.width / 2 - gun.width / 2
gun.y = player.y - gun.height
bullet_direction = "up"
gun_direction = bullet_direction
elseif key == "left" and count >= turn_timer then
count = 0
gun.width = 15
gun.height = 10
gun.x = player.x - gun.width
gun.y = player.y + player.height / 2 - gun.height / 2
bullet_direction = "left"
gun_direction = bullet_direction
end
end
function createBullet()
bullet = {}
bullet.x = gun.x + gun.width / 2
bullet.y = gun.y + gun.height / 2
bullet.width = 5
bullet.height = 5
bullet.speed = bullet_speed or 500
bullet.speedOfBullet = bullet.speed
bullet.direction = bullet_direction
bullet.x_origin = bullet.width / 2
bullet.y_origin = bullet.height / 2
bullet.damage = bullet_damage or 1
table.insert(bullets,bullet)
end
function createEnemy()
local x_min = -300
local x_max = love.graphics.getWidth() + 300
local y_min = -300
local y_max = love.graphics.getHeight() + 300
local deciding_x = math.random(0,1)
local deciding_y = math.random(0,1)
enemy = {}
enemy.width = math.random(20,50)
enemy.height = enemy.width
enemy.area = enemy.height * enemy.width
enemy.close_vert_speed = 0
enemy.close_hor_speed = 0
if pierce_shot == true then
enemy.hit = false
end
if deciding_x == 0 then
enemy.x = math.random(x_min,0)
elseif deciding_x == 1 then
enemy.x = math.random(love.graphics.getWidth(),x_max)
end
if deciding_y == 0 then
enemy.y = math.random(y_min,0)
elseif deciding_y == 1 then
enemy.y = math.random(love.graphics.getHeight(),y_max)
end
if enemy.area >= 2500 then
enemy.vert_speed = 50
enemy.hor_speed = 50
enemy.health = 7
elseif enemy.area >= 2025 then
enemy.vert_speed = 100
enemy.hor_speed = 100
enemy.health = 6
elseif enemy.area >= 1600 then
enemy.vert_speed = 150
enemy.hor_speed = 150
enemy.health = 5
elseif enemy.area >= 1225 then
enemy.vert_speed = 200
enemy.hor_speed = 200
enemy.health = 4
elseif enemy.area >= 900 then
enemy.vert_speed = 250
enemy.hor_speed = 250
enemy.health = 3
elseif enemy.area >= 625 then
enemy.vert_speed = 300
enemy.hor_speed = 300
enemy.health = 2
elseif enemy.area >= 400 then
enemy.vert_speed = 350
enemy.hor_speed = 350
enemy.health = 1
end
table.insert(enemies,enemy)
end
function wave_update()
wave = wave + 1
for i = 1,wave do
createEnemy()
end
end
function checkCollision(a,b)
local a_left = a.x
local a_right = a.x + a.width
local a_top = a.y
local a_bottom = a.y + a.height
local b_left = b.x
local b_right = b.x + b.width
local b_top = b.y
local b_bottom = b.y + b.height
return a_right > b_left
and a_left < b_right
and a_bottom > b_top
and a_top < b_bottom
end
function upgradeSelect()
upgrade = math.random(1,#upgrades)
player_speed = 350
bullet_speed = 500
bullet_damage = 1
if upgrades[upgrade] == "piercing" then
pierce_shot = true
table.remove(upgrades,i)
elseif upgrades[upgrade] == "bulletspeed" then
bullet_speed = bullet.speedOfBullet + 100
elseif upgrades[upgrade] == "playerspeed" then
player_speed = player.speed + 50
player.speed = player_speed
gun.speed = player_speed
elseif upgrades[upgrade] ==
gun_direction = bullet_direction
elseif key == "up" and count >= turn_timer then
count = 0
gun.width = 10
gun.height = 15
gun.x = player.x + player.width / 2 - gun.width / 2
gun.y = player.y - gun.height
bullet_direction = "up"
gun_direction = bullet_direction
elseif key == "left" and count >= turn_timer then
count = 0
gun.width = 15
gun.height = 10
gun.x = player.x - gun.width
gun.y = player.y + player.height / 2 - gun.height / 2
bullet_direction = "left"
gun_direction = bullet_direction
end
end
function createBullet()
bullet = {}
bullet.x = gun.x + gun.width / 2
bullet.y = gun.y + gun.height / 2
bullet.width = 5
bullet.height = 5
bullet.speed = bullet_speed or 500
bullet.speedOfBullet = bullet.speed
bullet.direction = bullet_direction
bullet.x_origin = bullet.width / 2
bullet.y_origin = bullet.height / 2
bullet.damage = bullet_damage or 1
table.insert(bullets,bullet)
end
function createEnemy()
local x_min = -300
local x_max = love.graphics.getWidth() + 300
local y_min = -300
local y_max = love.graphics.getHeight() + 300
local deciding_x = math.random(0,1)
local deciding_y = math.random(0,1)
enemy = {}
enemy.width = math.random(20,50)
enemy.height = enemy.width
enemy.area = enemy.height * enemy.width
enemy.close_vert_speed = 0
enemy.close_hor_speed = 0
if pierce_shot == true then
enemy.hit = false
end
if deciding_x == 0 then
enemy.x = math.random(x_min,0)
elseif deciding_x == 1 then
enemy.x = math.random(love.graphics.getWidth(),x_max)
end
if deciding_y == 0 then
enemy.y = math.random(y_min,0)
elseif deciding_y == 1 then
enemy.y = math.random(love.graphics.getHeight(),y_max)
end
if enemy.area >= 2500 then
enemy.vert_speed = 50
enemy.hor_speed = 50
enemy.health = 7
elseif enemy.area >= 2025 then
enemy.vert_speed = 100
enemy.hor_speed = 100
enemy.health = 6
elseif enemy.area >= 1600 then
enemy.vert_speed = 150
enemy.hor_speed = 150
enemy.health = 5
elseif enemy.area >= 1225 then
enemy.vert_speed = 200
enemy.hor_speed = 200
enemy.health = 4
elseif enemy.area >= 900 then
enemy.vert_speed = 250
enemy.hor_speed = 250
enemy.health = 3
elseif enemy.area >= 625 then
enemy.vert_speed = 300
enemy.hor_speed = 300
enemy.health = 2
elseif enemy.area >= 400 then
enemy.vert_speed = 350
enemy.hor_speed = 350
enemy.health = 1
end
table.insert(enemies,enemy)
end
function wave_update()
wave = wave + 1
for i = 1,wave do
createEnemy()
end
end
function checkCollision(a,b)
local a_left = a.x
local a_right = a.x + a.width
local a_top = a.y
local a_bottom = a.y + a.height
local b_left = b.x
local b_right = b.x + b.width
local b_top = b.y
local b_bottom = b.y + b.height
return a_right > b_left
and a_left < b_right
and a_bottom > b_top
and a_top < b_bottom
end
function upgradeSelect()
upgrade = math.random(1,#upgrades)
player_speed = 350
bullet_speed = 500
bullet_damage = 1
if upgrades[upgrade] == "piercing" then
pierce_shot = true
table.remove(upgrades,i)
elseif upgrades[upgrade] == "bulletspeed" then
bullet_speed = bullet.speedOfBullet + 100
elseif upgrades[upgrade] == "playerspeed" then
player_speed = player.speed + 50
player.speed = player_speed
gun.speed = player_speed
elseif upgrades[upgrade] ==
"bulletdamage" then
bullet_damage = bullet.damage + 1
end
end
Alright, so this is the code I am using, I have added basic upgrades to the game that you get randomly after each wave. With my code currently as is shown here, whenever the createBullet() function is run it will not add to the bullets list, or maybe the bullets list is being cleared? Anyways if someone could tell me why it will not make any bullets, and maybe send an updated version of the code that would be great.
https://redd.it/1gdtv37
@r_lua
bullet_damage = bullet.damage + 1
end
end
Alright, so this is the code I am using, I have added basic upgrades to the game that you get randomly after each wave. With my code currently as is shown here, whenever the createBullet() function is run it will not add to the bullets list, or maybe the bullets list is being cleared? Anyways if someone could tell me why it will not make any bullets, and maybe send an updated version of the code that would be great.
https://redd.it/1gdtv37
@r_lua
Reddit
From the lua community on Reddit
Explore this post and more from the lua community
Any way to decompile .dll to .lua ?
I recently found a dll that was written in lua, but I have no idea to decompile it to readable source code or simmilar, I tried using IDA but I don't know anything about binary or hex codes so thats a no for me, I only found ways to compile lua code to executable .dll or .exe, but I want to decompile it from the alredy compiled code, is there a way to reverse engineer the .dll file?. I read that maybe lua code is compiled in C++
What programms do you recommend to decompile the dll with? (already tried dnSpy, but it doesnt work with lua)
Is there any way to make the .dll readable or useful? (making it runnable, readable or editable in .lua)
I appreciate any help or thoughts.
https://redd.it/1gdyfh4
@r_lua
I recently found a dll that was written in lua, but I have no idea to decompile it to readable source code or simmilar, I tried using IDA but I don't know anything about binary or hex codes so thats a no for me, I only found ways to compile lua code to executable .dll or .exe, but I want to decompile it from the alredy compiled code, is there a way to reverse engineer the .dll file?. I read that maybe lua code is compiled in C++
What programms do you recommend to decompile the dll with? (already tried dnSpy, but it doesnt work with lua)
Is there any way to make the .dll readable or useful? (making it runnable, readable or editable in .lua)
I appreciate any help or thoughts.
https://redd.it/1gdyfh4
@r_lua
Reddit
From the lua community on Reddit
Explore this post and more from the lua community
Is there a guide on installing luarocks for windows for a complete beginner?
I've been programming with lua for about 2 months now, I learned a lot and its my first language. Basically, I don't know anything about programming and I wanna get some extensions for lua, however, every installation guide for luarocks in windows is extremely complex and features incomprehensible terms for someone like me, I don't have any of the tools that I need and every guide mentions different tools that I dont wanna get in fear of polluting my new pc. Can someone who got it to work on their machine give me a short guide or direction on how to do it?
https://redd.it/1geikiq
@r_lua
I've been programming with lua for about 2 months now, I learned a lot and its my first language. Basically, I don't know anything about programming and I wanna get some extensions for lua, however, every installation guide for luarocks in windows is extremely complex and features incomprehensible terms for someone like me, I don't have any of the tools that I need and every guide mentions different tools that I dont wanna get in fear of polluting my new pc. Can someone who got it to work on their machine give me a short guide or direction on how to do it?
https://redd.it/1geikiq
@r_lua
Reddit
From the lua community on Reddit
Explore this post and more from the lua community
Lua 1 Con : 1 Pro
Hello! I started thinking about different programming languages, and their Pros and Cons (in general, not compared to each other). Each serious language has their advantages & disadvantages. I try to think about this in this format: I think of 1 Pro, something I really like about the language, and then think of 1 Con of the language, related or not to the Pro. I ask yall, Lua community, what do you think is one pro and one con of Lua as a language. I will begin:
Pro: Ik some people disagree, but I love objects being tables in Lua. It fits very well in the noscripting nature of Lua, as it's very easy to operate.
Con: I think that lack of arrays/lists is a bit annoying, and something like `array.append(...)` looks much cleaner than `array[#array+1\]=...`
Pro: I love the `:` operator, it's a nice distinguish between "non-static" and "static" function access.
Con: I feel like Lua's syntax is too simplistic. Ik it's one of the selling points, but lack of simple `+=` operators is... annoying and makes clean beautiful Lua look less clean. Ik it's hard to implement in the current parser, but it would be nice to have that.
https://redd.it/1gejvfd
@r_lua
Hello! I started thinking about different programming languages, and their Pros and Cons (in general, not compared to each other). Each serious language has their advantages & disadvantages. I try to think about this in this format: I think of 1 Pro, something I really like about the language, and then think of 1 Con of the language, related or not to the Pro. I ask yall, Lua community, what do you think is one pro and one con of Lua as a language. I will begin:
Pro: Ik some people disagree, but I love objects being tables in Lua. It fits very well in the noscripting nature of Lua, as it's very easy to operate.
Con: I think that lack of arrays/lists is a bit annoying, and something like `array.append(...)` looks much cleaner than `array[#array+1\]=...`
Pro: I love the `:` operator, it's a nice distinguish between "non-static" and "static" function access.
Con: I feel like Lua's syntax is too simplistic. Ik it's one of the selling points, but lack of simple `+=` operators is... annoying and makes clean beautiful Lua look less clean. Ik it's hard to implement in the current parser, but it would be nice to have that.
https://redd.it/1gejvfd
@r_lua
Reddit
From the lua community on Reddit
Explore this post and more from the lua community
Is pairs() compiled in luajit?
Can't find a reliable source about this. As I remember correctly in luajit 2.0 it can't be compiled and used in interpreter mode. What is the current state of
https://redd.it/1gewkz0
@r_lua
Can't find a reliable source about this. As I remember correctly in luajit 2.0 it can't be compiled and used in interpreter mode. What is the current state of
pairs() in latest luajit?https://redd.it/1gewkz0
@r_lua
Reddit
From the lua community on Reddit
Explore this post and more from the lua community
all LUA noscripts will lose after changing windows ?
i have like 18 lua currently in desktop default just wondering what happens to them after changing windows are they saved in logitech account or i must export all ?
https://redd.it/1gf2hfs
@r_lua
i have like 18 lua currently in desktop default just wondering what happens to them after changing windows are they saved in logitech account or i must export all ?
https://redd.it/1gf2hfs
@r_lua
Reddit
From the lua community on Reddit
Explore this post and more from the lua community
Finding better syntax : conditional statement
[ ideal \]
[ my code \]
Can I make this better?
https://redd.it/1gfjjww
@r_lua
[ ideal \]
if temp_id == ['57', '61', '62'] then[ my code \]
if temp_id == '57' or temp_id == '62' or temp_id == '63' then Can I make this better?
https://redd.it/1gfjjww
@r_lua
Reddit
From the lua community on Reddit
Explore this post and more from the lua community
Finding better syntax : string.match
Note that, my IDE doesn't support return value of Boolean but only String.
< ideal >
but above code doesn't work due to the limited support by IDE
so I have to use like this :
To deal with this, is there a better idea to do this? such as..
https://redd.it/1gfjic6
@r_lua
Note that, my IDE doesn't support return value of Boolean but only String.
< ideal >
if string.match(self.Entity.CurrentMapName, 'idle|proklisi') == thenbut above code doesn't work due to the limited support by IDE
so I have to use like this :
if string.match(self.Entity.CurrentMapName, 'idle') = 'idel' or ~ ... thenTo deal with this, is there a better idea to do this? such as..
if string.match(self.Entity.CurrentMapName, 'idle|proklisi') == ('idle' or 'proklisi') thenhttps://redd.it/1gfjic6
@r_lua
Reddit
From the lua community on Reddit
Explore this post and more from the lua community
فك تشفير
يخوان احد يعرف كيف افك تشفير fxap ؟
سكربت fivem
Do you know how to decrypt fxap?
Sicript Fivem
https://redd.it/1gfovfw
@r_lua
يخوان احد يعرف كيف افك تشفير fxap ؟
سكربت fivem
Do you know how to decrypt fxap?
Sicript Fivem
https://redd.it/1gfovfw
@r_lua
Reddit
From the lua community on Reddit
Explore this post and more from the lua community
Beginer help: string
I'm totally new at coding and I got assigment to capitalize the first letters of the words in sentence. I don't understand how to do it.
If someone could tell me how to do that I would be grateful.
The sentence is "Is your dog's house red?"
https://redd.it/1gfry7u
@r_lua
I'm totally new at coding and I got assigment to capitalize the first letters of the words in sentence. I don't understand how to do it.
If someone could tell me how to do that I would be grateful.
The sentence is "Is your dog's house red?"
https://redd.it/1gfry7u
@r_lua
Reddit
From the lua community on Reddit
Explore this post and more from the lua community
luarocks interpreter
I tried using luarocks but since I use lua5.1 I got this error
Error: Lua 5.4 interpreter not found at C:\Program Files\to\lua
Please set your Lua interpreter with:
luarocks --local config variables.LUA <d:\path\lua.exe>
I tried these
luarocks config variables.LUA <C:\Program Files\lua\lua5.1.exe>
luarocks config variables.LUA "C:\Program Files\lua\lua.exe"
and many more
whenever i type luarocks config variables.LUA
Error: Unknown entry LUA
i already have lua set in the evir
how would i be able to fix it?
https://redd.it/1gfsma9
@r_lua
I tried using luarocks but since I use lua5.1 I got this error
Error: Lua 5.4 interpreter not found at C:\Program Files\to\lua
Please set your Lua interpreter with:
luarocks --local config variables.LUA <d:\path\lua.exe>
I tried these
luarocks config variables.LUA <C:\Program Files\lua\lua5.1.exe>
luarocks config variables.LUA "C:\Program Files\lua\lua.exe"
and many more
whenever i type luarocks config variables.LUA
Error: Unknown entry LUA
i already have lua set in the evir
how would i be able to fix it?
https://redd.it/1gfsma9
@r_lua
Reddit
From the lua community on Reddit
Explore this post and more from the lua community