• 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!

Clary Request thread

Status
Not open for further replies.

Clary

New Member
Joined
Mar 7, 2008
Messages
1,007
Reaction score
1
Do u need any action script? or talk action? or move event?
Request it here and I will make it for u asap if I can


Remember only action, talk & move nothing else.
Move only stepin alone and maybe stepout alone

Yours,
Clary
 
Last edited:
you think my wont work b/c i used a depot tile? i saw u check it on ur server so it must work
What did u mean with depot tile? depot tile action id? if ye then yes no way it work lol
anyway yours wont work as it should coz u wrote this:
if getPlayerStorageValue(cid, 5803) == -1 and getPlayerStorageValue(cid, 6492) == -1 then

I wrote this
if getPlayerStorageValue(cid, 5803) == 1 and getPlayerStorageValue(cid, 6492) == 1 then

Yours used -1 means if get player storage value == 5803 and 6492 = False (-1 means not)

While I used 1 means if get player storage value = 5803 and 6492 = True

So, Yours would work if he doesn't have the storage value means the quest maker can't pass :p
but I think stackpos is needed so,
I added stackpos :p
So, only thing I made is this:
u wrote this:
if getPlayerStorageValue(cid, 5803) == -1 and getPlayerStorageValue(cid, 6492) == -1 then

I wrote this
if getPlayerStorageValue(cid, 5803) == 1 and getPlayerStorageValue(cid, 6492) == 1 then
and I added stackpos=253 <- maybe that was needed coz teleport thing can work for items as well :p

Hey CLary i have work for you! :D I need script that use on switch, destroy the stone (bloking the way to go out).
here you go :p
open actions/scripts copy paste any .lua and .lua file and name it to lstone
and paste this in it:
PHP:
- A script made by Clary 100%
---------------------------- Start Config ----------------------------
local stonepos = {x=1016, y=1290, z=13, stackpos=1} -- Stone pos
local STONEID = 1354 -- stone id
----------------------------- End Config -----------------------------
function onUse(cid, item, fromPos, item2, toPos)
if item.actionid == 29001 and item.itemid == 1945 then
doRemoveItem(getThingfromPos(stonepos).uid)
doTransformItem(item.uid,1946)
else
doCreateItem(STONEID, 1, stonepos)
doTransformItem(item.uid, 1945)
end
return 1
end
and this in actions.xml
Code:
	<action actionid="29001" script="lstone.lua"/>
and in map make the lever action id 29001. and stone just put it :p
Remember to change
local stonepos = {x=1016, y=1290, z=13, stackpos=1} -- Stone pos
and
local STONEID = 1354 -- stone id
 
Last edited:
Clary, the script machine!
Heheh
Im needing the script of de QUEST of the anihilator..
Just the quest, when get one of the quests, canot open the other ones..
CYA
 
Last edited:
What did u mean with depot tile? depot tile action id? if ye then yes no way it work lol
anyway yours wont work as it should coz u wrote this:
if getPlayerStorageValue(cid, 5803) == -1 and getPlayerStorageValue(cid, 6492) == -1 then

I wrote this
if getPlayerStorageValue(cid, 5803) == 1 and getPlayerStorageValue(cid, 6492) == 1 then

Yours used -1 means if get player storage value == 5803 and 6492 = False (-1 means not)

While I used 1 means if get player storage value = 5803 and 6492 = True

So, Yours would work if he doesn't have the storage value means the quest maker can't pass :p
but I think stackpos is needed so,
I added stackpos :p
So, only thing I made is this:
u wrote this:
if getPlayerStorageValue(cid, 5803) == -1 and getPlayerStorageValue(cid, 6492) == -1 then

I wrote this
if getPlayerStorageValue(cid, 5803) == 1 and getPlayerStorageValue(cid, 6492) == 1 then
and I added stackpos=253 <- maybe that was needed coz teleport thing can work for items as well :p

you put
Code:
<movevent event="StepIn" actionid="20013" script="testpoi.lua"/>
into your movement folder right? well i did the same thing and on my map editor i used depot tiles for the space, but b/c there already used in the movement file

Code:
	<!-- (Depot & Level) tiles -->
	<movevent event="StepIn" itemid="416" script="tiles.lua"/>
	<movevent event="StepOut" itemid="417" script="tiles.lua"/>
	<movevent event="StepIn" itemid="426" script="tiles.lua"/>
	<movevent event="StepOut" itemid="425" script="tiles.lua"/>
	<movevent event="StepIn" itemid="446" script="tiles.lua"/>
	<movevent event="StepOut" itemid="447" script="tiles.lua"/>
	<movevent event="StepIn" itemid="3216" script="tiles.lua"/>
	<movevent event="StepOut" itemid="3217" script="tiles.lua"/>

and they are by itemid so it didnt work b/c it was trying to execute 2 scripts at once so i had to use a different tile. at first i didn't realize this so thats why i ask about depot tiles in my other post
 
I don't know what is the problem then.
anyway try changing actionid to anything else.
Coz it is working for me.

@jpkulik
It is already found in TFS.
anyway here is the script.
PHP:
local annihilatorReward = {1990, 2400, 2431, 2494}
function onUse(cid, item, fromPosition, itemEx, toPosition)
	if item.uid > 1000 and item.uid < 10000 then
		local itemWeight = getItemWeight(item.uid, 1)
		local playerCap = getPlayerFreeCap(cid)
		if isInArray(annihilatorReward, item.uid) == TRUE then
			if getPlayerStorageValue(cid, 30015) == -1 then
				if playerCap >= itemWeight then
					if item.uid == 1990 then
						container = doPlayerAddItem(cid, 1990, 1)
						doContainerAddItem(container, 2326, 1)
					else
						doPlayerAddItem(cid, item.uid, 1)
					end
					doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, 'You have found a ' .. getItemName(item.uid) .. '.')
					setPlayerStorageValue(cid, 30015, 1)
				else
					doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, 'You have found a ' .. getItemName(item.uid) .. ' weighing ' .. itemWeight .. ' oz it\'s too heavy.')
				end
			else
				doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "It is empty.")
			end
		elseif getPlayerStorageValue(cid, item.uid) == -1 then
			if playerCap >= itemWeight then
				doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, 'You have found a ' .. getItemName(item.uid) .. '.')
				doPlayerAddItem(cid, item.uid ,1)
				setPlayerStorageValue(cid, item.uid, 1)
			else
				doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, 'You have found a ' .. getItemName(item.uid) .. ' weighing ' .. itemWeight .. ' oz it\'s too heavy.')
			end
		else
			doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "It is empty.")
		end
	else
		return FALSE
	end
	return TRUE
end
 
Last edited:
I request an movement (swimming), not that from TFS cuz of this had one bug (if you logout on water and after that login again you got normal outfit).
 
Just add a check to onLogin function?

Code:
local outfit = {
    looktypehead = ,
    looktypebody = ,
    -- and so on
}
local swimmingTiles = {id, id, id, id}
if isInArray(getCreaturePosition(cid), swimmingTiles) == TRUE then
    -- change outfit from swimming.lua or w/e
 
Just add a check to onLogin function?

Code:
local outfit = {
    looktypehead = ,
    looktypebody = ,
    -- and so on
}
local swimmingTiles = {id, id, id, id}
if isInArray(getCreaturePosition(cid), swimmingTiles) == TRUE then
    -- change outfit from swimming.lua or w/e

It can be done wichout adding that to onLogin.
 
So do it in the movements? It will look almost the same o.o

function onStepIn
change outfit

and in movements.xml add swimmable tiles which will use this script oO
 
Hello Clary ,

I'm needing a script of a spell able to push players.
I tried to do this in many ways...I even did other scripts...but the spell dont push the players... ;/
Someone could help me?

I Use The Forgotten Server;
the spell must have an area of 5 sqm;

Thanks. !!
 
Status
Not open for further replies.
Back
Top