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

Problem z atackiem

Status
Not open for further replies.

Lukanio

### Own3D ###
Joined
Nov 25, 2008
Messages
325
Reaction score
6
Zrobilem sobie new spella i mam problem z attackiem , a mianowicie - zamiast atakowac gracz ulecza przeciwnika/potwora.... I to jest na tyle dziwne ze wszystko zalezy "jak sie zaloga" czasem uleczy czasem nie , czasami zdejmiesz z eq bron ktora dodaje % ATK i zadaje obrazenia - czasem nic nie pomoga... DZIWNA AKCJA.

Oto kod spella:
Code:
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_HITAREA)
function onGetFormulaValues(cid, level, maglevel)
min = (level * 3.5 + maglevel * 40) * 0.7
max = (level * 3.5 + maglevel * 40) * 0.8


if(getPlayerStorageValue(cid, 59700) <= 5) then
local super = getPlayerStorageValue(cid, 59700)
minn = max + ( 400000 * 3.5 * super * 0.6 )
maxx = min + ( 400000 * 3.6 * super * 0.6 )

elseif(getPlayerStorageValue(cid, 59700) >= 5) then
local reborn = getPlayerStorageValue(cid, 59700)
minn = max + ( 500000 * 3.5 * super * 0.6 )
maxx = min + ( 500000 * 3.6 * super * 0.6 )

end
	return minn, maxx
end

setCombatCallback(combat, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")

local area = createCombatArea(AREA_SQUARE2X2)
setCombatArea(combat, area)

function onCastSpell(cid, var)
	return doCombat(cid, combat, var)
end

Prosze o pomoc!
 
No bo zwracasz dodanie wartosci, czyli leczysz?
Code:
return -minn, -maxx



Ewentualnie troche zoptymalizowana wersja:
Code:
local combat = createCombatObject() 
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_HITAREA)
setCombatArea(combat, createCombatArea(AREA_SQUARE2X2))

function onGetFormulaValues(cid, level, maglevel)
	local v = getCreatureStorage(cid, 59700)
	return -((v < 5 and 400000 or 50000) * 3.5 * v * 0.6), -((v < 5 and 400000 or 50000) * 3.5 * v * 0.6)
end
setCombatCallback(combat, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")

function onCastSpell(cid, var)
	return doCombat(cid, combat, var)
end
 
Last edited:
kombinowalem z tym
Code:
return -minn, -maxx
i to i tak nie pomoglo!

a z tym 2 pokombinuje ! dzieki ;)
 
Status
Not open for further replies.
Back
Top Bottom