• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!
  • 2026 staff recruitment is open! Check it out and consider applying!

Points Scripttt

killing

Member
Joined
Feb 23, 2012
Messages
815
Reaction score
11
Location
BIH
Hello
I need a Donation Acces for my OT.
When player use item ID 2266 i want to player get 10 points on site evry 3 hours for 7 days. :)
Im using 0.3.6 (8.60)
Rep++
 
action for item
LUA:
function onUse(cid, item)
	if (item.itemid == 2266) then
		doCreatureSetStorage(cid, 22661, 1)
	end
end

globalevent - set it on 3hours interval
LUA:
function onThink(interval, lastExecution, thinkInterval)
	db.executeQuery("UPDATE accounts SET premium_points = premium_points + 10 WHERE id IN (SELECT DISTINCT players.account_id FROM player_storage LEFT JOIN players ON players.id = player_storage.player_id WHERE key = 22661 AND value = \"1\")")
end
 
Last edited:
I want to player keep getting Points for 7 Days.

- - - Updated - - -

Do i have to register it?

- - - Updated - - -

I want to player keep getting Points for 7 Days.
 
LUA:
function onThink(interval, lastExecution, thinkInterval)
	--24/3 = 8 then 8*7 = 56
	db.executeQuery("UPDATE accounts SET premium_points = premium_points + 10 WHERE id IN (SELECT DISTINCT players.account_id FROM player_storage LEFT JOIN players ON players.id = player_storage.player_id WHERE key = 22661 AND value >= \"1\" AND value <= \"56\")")
	db.executeQuery("UPDATE player_storage SET value = value + 1 WHERE key = 22661")
end
Try this but remember item after every use will reset counter of days

- - - Updated - - -

XML:
<globalevent name="points_by_averatec" interval="10800" event="script" value="nameOfScript.lua"/>
globalevents.xml
 
Last edited:
LUA:
function onThink(interval, lastExecution, thinkInterval)
	--24/3 = 8 then 8*7 = 56
	db.executeQuery("UPDATE `accounts` SET `premium_points` = `premium_points` + 10 WHERE `id` IN (SELECT DISTINCT `players`.`account_id` FROM `player_storage` LEFT JOIN `players` ON `players`.id` = `player_storage`.`player_id` WHERE `key` = 22661 AND `value` >= '1' AND `value` <= '56')")
	db.executeQuery("UPDATE `player_storage` SET `value` = `value` + 1 WHERE `key` = 22661")
end
fixed version
 
Last edited:
5sDFlfv.png
 
LUA:
function onThink(interval, lastExecution, thinkInterval)
	--24/3 = 8 then 8*7 = 56
	db.executeQuery("UPDATE `accounts` SET `premium_points` = `premium_points` + 10 WHERE `id` IN (SELECT DISTINCT account_id FROM players RIGHT JOIN player_storage ON player_storage.player_id = players.id WHERE `key` = 22661 AND `value` >= 1 AND `value` <= 56)")
	db.executeQuery("UPDATE `player_storage` SET `value` = `value` + 1 WHERE `key` = 22661")
	return true
end
 
Last edited:
did not help.
agend :( sam problem

- - - Updated - - -

i think i have fixd it

- - - Updated - - -

nop i didint

- - - Updated - - -

qa1Al7b.png


- - - Updated - - -

I think to problem is in name="DonationTime"

- - - Updated - - -

xml
 
Back
Top