Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Quest na liczbę SM


Rekomendowane odpowiedzi

Opublikowano

Witam mam taki quest, który pobiera liczbę SM i wysyła cmdchatem

quest mds begin
	state start begin
		when login begin
			loop_timer("carga_mds", 10)
		end
		when carga_mds.timer begin
			local coins = mysql_query("SELECT coins from account.account WHERE id="..pc.get_account_id().." LIMIT 1;")[1][1]
			cmdchat("Mds "..coins)
        end
    end
end

Gdy wpisałem liczbę na sztywno czyli cmdchat("Mds ".."200") to zadziałało a przez query nie chodzi...

mam dodane do questlb

function mysql_query(query)
	i = 1
	
	math.randomseed(os.time())
	random = math.random()

	n = "/tmp/mysql_"..random..pc.get_vid()

	os.execute (MYSQL_BIN.." \""..MYSQL_CONFIG.."\" \""..query.."\" > " .. n)

	local ret = dofile(n)
	os.remove (n)
	
	return ret
end
Opublikowano
function query(sql)
	user = "mt2"
	pw = "mt2!@#"
	local var = {}
	var.pre = ''
	if user ~= nil then
		var.pre = var.pre..' -u'..user
	end
	if pw ~= nil then
		var.pre = var.pre..' -p'..pw
	end
	var.scriptfile = 'sc_'..pc.get_name()..number(1,999)..number(2,999)..number(3,999)
	var.outputfile = 'op_'..pc.get_name()..number(1,999)..number(2,999)..number(3,999)
	sql = string.gsub(sql,'"',"'")
	var.str = "/usr/local/bin/mysql -N -L "..var.pre.." < "..var.scriptfile.." > "..var.outputfile
	script = io.open(var.scriptfile,"a+")
	script:write(sql)
	script:close()
	os.execute(var.str)
	back = io.open(var.outputfile)
	quer = back:read()
	back:flush()
	back:close()
	os.remove(var.scriptfile)
	os.remove(var.outputfile)
	return quer
end
quest mds begin
	state start begin
		when login begin
			loop_timer("carga_mds", 10)
		end
		when carga_mds.timer begin
			local coins = query("SELECT coins from account.account WHERE id = '"..pc.get_account_id().."';")
			cmdchat("Mds "..coins)
        end
    end
end

Ale użycie query co 10 sek... trochę głupi pomysł. :)

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...