What's new

-Skrypt Podwodne zycie :D

Status
Not open for further replies.

James Montana

Active User
Joined
Feb 22, 2016
Messages
103
Reaction score
1
Age
26
Siema jest mozliwosc aby kto? przerobi? ten skrypt:
[LUA]local condition = createConditionObject(CONDITION_DROWN)
setConditionParam(condition, CONDITION_PARAM_PERIODICDAMAGE, -20)
setConditionParam(condition, CONDITION_PARAM_TICKS, -1)
setConditionParam(condition, CONDITION_PARAM_TICKINTERVAL, 2000)

function onStepIn(cid, item, position, fromPosition)
if(isPlayer(cid)) then
doAddCondition(cid, condition)
end

return true
end

function onStepOut(cid, item, position, fromPosition)
doRemoveCondition(cid, CONDITION_DROWN)
return true
end
[/LUA]
[LUA] <movevent type="StepIn" fromid="5405" toid="5410" event="script" value="drown.lua"/>
<movevent type="StepOut" fromid="5405" toid="5410" event="script" value="drown.lua"/>[/LUA]
Chodzi mi o to aby po wej?ciu na kratke gracz dostawa? tylko ,,condition" i dostawa? obra?enia co jaki? czas, aktualnie skrypt dzia?a tak ze po wej?ciu na kazd? kratke zakazdym razem dostaj? obra?enia, oraz stoj?c na niej tak?e.

Albo gdyby nie da?o si? 1 opcj?, to ustawi? randomowo np. chodz?c po tych powierzchniach raz dostaniesz obra?enie a raz nie.
 

rafaeru

Active User
Joined
Aug 18, 2010
Messages
139
Reaction score
6
Odp: Podwodne zycie :D

condition tylko raz:
Code:
local condition = createConditionObject(CONDITION_DROWN)
setConditionParam(condition, CONDITION_PARAM_PERIODICDAMAGE, -20)
setConditionParam(condition, CONDITION_PARAM_TICKS, -1)
setConditionParam(condition, CONDITION_PARAM_TICKINTERVAL, 2000)
 
function onStepIn(cid, item, position, fromPosition)
	if(isPlayer(cid) and getCreatureCondition(cid, CONDITION_DROWN) == false) then
		doAddCondition(cid, condition)
	end
 
	return true
end
 
function onStepOut(cid, item, position, fromPosition)
	if getCreatureCondition(cid, CONDITION_DROWN) == false then
		doRemoveCondition(cid, CONDITION_DROWN)
	end
	
	return true
end

condition losowo:
Code:
local condition = createConditionObject(CONDITION_DROWN)
setConditionParam(condition, CONDITION_PARAM_PERIODICDAMAGE, -20)
setConditionParam(condition, CONDITION_PARAM_TICKS, -1)
setConditionParam(condition, CONDITION_PARAM_TICKINTERVAL, 2000)
 
local proc = 5 -- ile % na condition
 
function onStepIn(cid, item, position, fromPosition)
	if(isPlayer(cid)) then
		if math.random(1,100) <= proc then
			doAddCondition(cid, condition)
		end
	end
 
	return true
end
 
function onStepOut(cid, item, position, fromPosition)
	doRemoveCondition(cid, CONDITION_DROWN)
	return true
end
 

TenTypSwir

NNSTORY.EU Developer
Joined
Jun 8, 2010
Messages
1,657
Reaction score
117
Odp: Podwodne zycie :D

onStepOut - jesli niema conditiona to go usunie ? Zmie? na if true :p
 

rafaeru

Active User
Joined
Aug 18, 2010
Messages
139
Reaction score
6
Odp: Podwodne zycie :D

tam tego wgl nie powinno by? na dobra spraw? bo jak by dac == true to by na to samo wysz?o ;p
 

Zbizu

Luakami
Joined
Mar 13, 2010
Messages
719
Reaction score
104
Age
28
Odp: Podwodne zycie :D

musisz wpisa? te kratki w tabelk? i sprawdza? onStepIn czy kratka z fromPosition jest w tabelce, je?li nie to nadaje condition
analogicznie dla onStepOut - je?li nie jest w tabelce to nie usuwa
 

James Montana

Active User
Joined
Feb 22, 2016
Messages
103
Reaction score
1
Age
26
Odp: Podwodne zycie :D

condition tylko raz:
Code:
local condition = createConditionObject(CONDITION_DROWN)
setConditionParam(condition, CONDITION_PARAM_PERIODICDAMAGE, -20)
setConditionParam(condition, CONDITION_PARAM_TICKS, -1)
setConditionParam(condition, CONDITION_PARAM_TICKINTERVAL, 2000)
 
function onStepIn(cid, item, position, fromPosition)
	if(isPlayer(cid) and getCreatureCondition(cid, CONDITION_DROWN) == false) then
		doAddCondition(cid, condition)
	end
 
	return true
end
 
function onStepOut(cid, item, position, fromPosition)
	if getCreatureCondition(cid, CONDITION_DROWN) == false then
		doRemoveCondition(cid, CONDITION_DROWN)
	end
	
	return true
end

Dzi?ki dzia?a, ale jest problem bo gdy schodz? z kratki to conditio nie znika.

---------- Tre?? dodana o 20:01 ----------

@Zbi?u
O jakie tabelki ci chodzi? :sad:
 

rafaeru

Active User
Joined
Aug 18, 2010
Messages
139
Reaction score
6
Odp: Podwodne zycie :D

Code:
local condition = createConditionObject(CONDITION_DROWN)
setConditionParam(condition, CONDITION_PARAM_PERIODICDAMAGE, -20)
setConditionParam(condition, CONDITION_PARAM_TICKS, -1)
setConditionParam(condition, CONDITION_PARAM_TICKINTERVAL, 2000)
 
function onStepIn(cid, item, position, fromPosition)
	if(isPlayer(cid) and getCreatureCondition(cid, CONDITION_DROWN) == false) then
		doAddCondition(cid, condition)
	end
 
	return true
end
 
function onStepOut(cid, item, position, fromPosition)
		doRemoveCondition(cid, CONDITION_DROWN)
	
	return true
end
 

James Montana

Active User
Joined
Feb 22, 2016
Messages
103
Reaction score
1
Age
26
Odp: Podwodne zycie :D

Code:
local condition = createConditionObject(CONDITION_DROWN)
setConditionParam(condition, CONDITION_PARAM_PERIODICDAMAGE, -20)
setConditionParam(condition, CONDITION_PARAM_TICKS, -1)
setConditionParam(condition, CONDITION_PARAM_TICKINTERVAL, 2000)
 
function onStepIn(cid, item, position, fromPosition)
	if(isPlayer(cid) and getCreatureCondition(cid, CONDITION_DROWN) == false) then
		doAddCondition(cid, condition)
	end
 
	return true
end
 
function onStepOut(cid, item, position, fromPosition)
		doRemoveCondition(cid, CONDITION_DROWN)
	
	return true
end

Dzia?a tak jak na pocz?tku, na ka?dej kratce otrzymuje obrazenia
 

rafaeru

Active User
Joined
Aug 18, 2010
Messages
139
Reaction score
6
Odp: Podwodne zycie :D

Code:
local condition = createConditionObject(CONDITION_DROWN)
setConditionParam(condition, CONDITION_PARAM_PERIODICDAMAGE, -20)
setConditionParam(condition, CONDITION_PARAM_TICKS, -1)
setConditionParam(condition, CONDITION_PARAM_TICKINTERVAL, 2000)
 
function onStepIn(cid, item, position, fromPosition)
	if(isPlayer(cid) and getCreatureCondition(cid, CONDITION_DROWN) == false) then
		doAddCondition(cid, condition)
	end
 
	return true
end
 
function onStepOut(cid, item, position, fromPosition)
	if item.itemid ~= 5405 or item.itemid ~= 5406 or item.itemid ~= 5407 or item.itemid ~= 5408 or item.itemid ~= 5409 or item.itemid ~= 5410 then
		doRemoveCondition(cid, CONDITION_DROWN)
	end
	
	return true
end
 

Zbizu

Luakami
Joined
Mar 13, 2010
Messages
719
Reaction score
104
Age
28
Odp: Podwodne zycie :D

wygrzeba?em w?asny skrypt ze swojego starego datapacku, trzymaj
Code:
local condition = createConditionObject(CONDITION_DROWN)
setConditionParam(condition, CONDITION_PARAM_PERIODICDAMAGE, -20)
setConditionParam(condition, CONDITION_PARAM_TICKS, -1)
setConditionParam(condition, CONDITION_PARAM_TICKINTERVAL, 2000)

function onStepIn(cid, item, position, fromPosition)
local slotItem = getPlayerSlotItem(cid, CONST_SLOT_HEAD)
    if isPlayer(cid) then
        if not Player(cid):getCondition(CONDITION_DROWN,CONDITIONID_COMBAT) then
            doAddCondition(cid, condition)
        end
    end
    
    if(math.random(1, 10) == 1) then
        doSendMagicEffect(position, CONST_ME_BUBBLES)
    end
    return true
end

local underWater = {5405, 5406, 5407, 5408, 5409, 5410, 5743, 5744, 5764, 9671, 9672, 9673, 10019}

function onStepOut(cid, item, pos)
    if isPlayer(cid) then
        local cpos = getThingPos(cid)
        if(isInArray(underWater, getThingfromPos({x = cpos.x, y = cpos.y, z = cpos.z,  stackpos = 0}).itemid)) then
            return true
        else
            doRemoveCondition(cid, CONDITION_DROWN)
        end
    end
    return true
end

Code:
  <movevent event="StepIn" fromid="5406" toid="5410" script="drowning.lua" /> 
  <movevent event="StepOut" fromid="5406" toid="5410" script="drowning.lua" /> 
  <movevent event="StepIn" itemid="5743" script="drowning.lua" /> 
  <movevent event="StepIn" itemid="5744" script="drowning.lua" /> 
  <movevent event="StepIn" itemid="5764" script="drowning.lua" /> 
  <movevent event="StepIn" itemid="9671" script="drowning.lua" /> 
  <movevent event="StepIn" itemid="9672" script="drowning.lua" /> 
  <movevent event="StepIn" itemid="9673" script="drowning.lua" /> 
  <movevent event="StepIn" itemid="10019" script="drowning.lua" /> 
  <movevent event="StepOut" itemid="5743" script="drowning.lua" /> 
  <movevent event="StepOut" itemid="5744" script="drowning.lua" /> 
  <movevent event="StepOut" itemid="5764" script="drowning.lua" /> 
  <movevent event="StepOut" itemid="9671" script="drowning.lua" /> 
  <movevent event="StepOut" itemid="9672" script="drowning.lua" /> 
  <movevent event="StepOut" itemid="9673" script="drowning.lua" /> 
  <movevent event="StepOut" itemid="10019" script="drowning.lua" />
 
Last edited:
Status
Not open for further replies.
Top