по нажатию на кнопку click, должны набираться очки, но при нажатиях больше одного раза, переменная не выдает больше одного. Как исправить? Скорее всего ошибка в функции loadSettions.
local auto_money = 0 local auto_money_buy = 110 local auto_money_lvl = 0
local bonus_money_lvl = 0 local bonus_money_buy = 45
local json = require("json")
local function loadSettings(fileName)
-- Path for the file to read local path_money_c = system.pathForFile( "money_c.txt", system.ResourceDirectory )
-- Open the file handle local file, errorString = io.open( path_money_c, "r" )
if not file then -- Error occurred; output the cause print( "File error: " .. errorString ) else -- Read data from file money = file:read( "*n" ) io.close( file ) end
file = nil
return nil end
function saveSetting(fileName) local saveData = money local path_money_c = system.pathForFile( "money_c.txt", system.ResourceDirectory ) -- Open the file handle local file, errorString = io.open( path_money_c, "w" )
if not file then -- Error occurred; output the cause print( "File error: " .. errorString ) else -- Write data to file file:write( saveData ) -- Close the file handle io.close( file ) end
local bacg = display.newRect(0,0,1080,1920) bacg:setFillColor(0.799,0.799,0.799)
local bacg_m = display.newRect(0,0,1080,100) bacg_m:setFillColor(0.599,0.599,0.599)
local button = display.newRect(160,190,175,175) button:setFillColor(0,0.4,0.3)
local button_auto = display.newRect(70,400,111,111) button_auto:setFillColor(0,0.4,0.3)
local button_bonus = display.newRect(250,400,111,111) button_bonus:setFillColor(0,0.4,0.3)
--audio
local lvl_up_audio = audio.loadSound("audio/lvl_up.mp3")
--audio end
------------------------txt local text = display.newText("Click", 161, 190, "consolas", 30) text:setFillColor(1,1,1)
local text1 = display.newText("Money:", 64, -19, "consolas", 30) text1:setFillColor(0,0.1,0.8)
local text2 = display.newText(money, 200, -16, "consolas", 30) text2:setFillColor(0,0.1,0.8)
local text3 = display.newText("Auto", 70, 370, "consolas", 30) text3:setFillColor(1,1,1)
local text4 = display.newText("click", 70, 400, "consolas", 30) text4:setFillColor(1,1,1)
local text5 = display.newText(auto_money_buy, 70, 437, "consolas", 30) text5:setFillColor(1,1,1)
local text6 = display.newText("Bonus", 250, 370, "consolas", 30) text6:setFillColor(1,1,1)
local text7 = display.newText("click", 250, 400, "consolas", 30) text7:setFillColor(1,1,1)
local text8 = display.newText(bonus_money_buy, 250, 437, "consolas", 30) text8:setFillColor(1,1,1) ------------------------txt end
local button_shadow = display.newRect(160,280,175,10) button_shadow:setFillColor(0,0.3,0.4) local button_shadow_auto = display.newRect(70,460,111,10) button_shadow_auto:setFillColor(0,0.3,0.4) local button_shadow_bonus = display.newRect(250,460,111,10) button_shadow_bonus:setFillColor(0,0.3,0.4)
local copyright = display.newText("KernelCoreSW 2018-2019", 163, 490, "consolas", 23) copyright:setFillColor(0,0.1,0.8)
local function flapBird (event) if(event.phase == "began") then ---lvl if(bonus_money_lvl == 0) then money = money + 1 end if(bonus_money_lvl == 1) then money = money + 2 end if(bonus_money_lvl == 2) then money = money + 3 end if(bonus_money_lvl == 3) then money = money + 4 end if(bonus_money_lvl == 4) then money = money + 5 end if(bonus_money_lvl == 5) then money = money + 6 end
if(bonus_money_lvl == 6) then money = money + 7 end if(bonus_money_lvl == 7) then money = money + 8 end if(bonus_money_lvl == 8) then money = money + 9 end if(bonus_money_lvl == 9) then money = money + 10 end if(bonus_money_lvl == 10) then money = money + 11 end text2.text = money end end local function flapBird_auto (event) if(event.phase == "began") then if(money >= auto_money_buy) then audio.play(lvl_up_audio)
money = money - auto_money_buy auto_money_buy = auto_money_buy * 3 auto_money_lvl = auto_money_lvl + 1 end text2.text = money text5.text = auto_money_buy end end local function flapBird_bonus (event) if(event.phase == "began") then if(money >= bonus_money_buy) then audio.play(lvl_up_audio)
money = money - bonus_money_buy bonus_money_buy = bonus_money_buy * 3 bonus_money_lvl = bonus_money_lvl + 1 end text2.text = money text8.text = bonus_money_buy end end local function onUpdate (args)
if(auto_money > 40) then auto_money = 0 end ---------levels if(auto_money_lvl == 1) then if(auto_money == 40) then money = money + 1 text2.text = money end end if(auto_money_lvl == 2) then if(auto_money == 40) then money = money + 5 text2.text = money end end if(auto_money_lvl == 3) then if(auto_money == 40) then money = money + 10 text2.text = money end end if(auto_money_lvl == 4) then if(auto_money == 40) then money = money + 16 text2.text = money end end if(auto_money_lvl == 5) then if(auto_money == 40) then money = money + 21 text2.text = money end end if(auto_money_lvl == 6) then if(auto_money == 40) then money = money + 29 text2.text = money end end if(auto_money_lvl == 7) then if(auto_money == 40) then money = money + 36 text2.text = money end end if(auto_money_lvl == 8) then if(auto_money == 40) then money = money + 41 text2.text = money end end if(auto_money_lvl == 9) then if(auto_money == 40) then money = money + 56 text2.text = money end end if(auto_money_lvl == 10) then if(auto_money == 40) then money = money + 61 text2.text = money end end if(auto_money_lvl == 11) then if(auto_money == 40) then money = money + 76 text2.text = money end end
You should not create, modify, or add files to this directory. Doing so will prevent the device from verifying the integrity of your application; in some cases the device will treat your application as malware and refuse to launch it.
Core, system.DocumentsDirectory для постоянного хранения самое оно, самому туда файлики кидать не надо. При первом запуске приложения этот каталог будет пуст, появится после вызова функции сохранения.
Если сейва нет, то заполняем таблицу данными по-умолчанию.