Talkactions Transform and mount

Status
Zamknięty.

Xart Irok

Senior User
Zarejestrowany
Dołączył
Wrzesień 7, 2008
Posty
2925
Liczba reakcji
410
Wiek
35
Pomys?y: transformacja (silniejszy bohater), mutacja (zmiana outfitu i szybko??)

PHP:
-------------------------
---- Xart Irok write ----
-------- rev 2.7 --------
-------------------------
local time = 1 * 60 * 1000
-------- ExHaust --------
local exhaust = createConditionObject(CONDITION_EXHAUST)
setConditionParam(exhaust, CONDITION_PARAM_TICKS, time)
------- Condition -------
------- Attribute -------
local wolfConditionAttributes = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(wolfConditionAttributes, CONDITION_PARAM_TICKS, time)
setConditionParam(wolfConditionAttributes, CONDITION_PARAM_STAT_MAXHEALTHPERCENT, -50)
setConditionParam(wolfConditionAttributes, CONDITION_PARAM_STAT_MAXMANAPERCENT, 50)
setConditionParam(wolfConditionAttributes, CONDITION_PARAM_BUFF, TRUE)
local bearConditionAttributes = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(bearConditionAttributes, CONDITION_PARAM_TICKS, time)
setConditionParam(bearConditionAttributes, CONDITION_PARAM_STAT_MAXHEALTHPERCENT, -50)
setConditionParam(bearConditionAttributes, CONDITION_PARAM_STAT_MAXMANAPERCENT, 50)
setConditionParam(bearConditionAttributes, CONDITION_PARAM_BUFF, TRUE)
--------- Haste ---------
local wolfConditionHaste = createConditionObject(CONDITION_HASTE)
setConditionParam(wolfConditionHaste, CONDITION_PARAM_TICKS, time)
setConditionFormula(wolfConditionHaste, 0.7, -56, 0.7, -56)
local bearConditionHaste = createConditionObject(CONDITION_HASTE)
setConditionParam(bearConditionHaste, CONDITION_PARAM_TICKS, time)
setConditionFormula(bearConditionHaste, 0.7, -56, 0.7, -56)
-------- Outfits --------
local wolfConditionOutfit = createConditionObject(CONDITION_OUTFIT)
setConditionParam(wolfConditionOutfit, CONDITION_PARAM_TICKS, time)
addOutfitCondition(wolfConditionOutfit, {lookType = 27, lookHead = 0, lookBody = 0, lookLegs = 0, lookFeet = 0})
local bearConditionOutfit = createConditionObject(CONDITION_OUTFIT)
setConditionParam(bearConditionOutfit, CONDITION_PARAM_TICKS, time)
addOutfitCondition(bearConditionOutfit, {lookType = 16, lookHead = 0, lookBody = 0, lookLegs = 0, lookFeet = 0})
-------- Configs --------
local config = {
    ["wolf"] = {level=100, magLevel=1, mana=10, name='wolf', conditionOutfit=wolfConditionOutfit, conditionAttributes=wolfConditionAttributes, conditionHaste=wolfConditionHaste},
    ["bear"] = {level=100, magLevel=1, mana=10, name='bear', conditionOutfit=bearConditionOutfit, conditionAttributes=bearConditionAttributes, conditionHaste=bearConditionHaste}
}

function onSay(cid, words, param, channel)
	local p = config[string.lower(param)]
	
	if p then
		if not(getCreatureCondition(cid, CONDITION_EXHAUST))then
			if getPlayerLevel(cid) >= p.level then
				if getPlayerMagLevel(cid) >= p.magLevel then
					if getCreatureMana(cid) >= p.mana then
						doSendMagicEffect(getCreaturePosition(cid), 10)
						doPlayerAddMana(cid, -p.mana, false)
						doPlayerAddSpentMana(cid, p.mana)
						doCreatureSay(cid, words.." "..param, TALKTYPE_ORANGE_1)
						doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_RED, 'You have mounted '..getArticle(p.name)..' '..p.name.. '.')
						doAddCondition(cid, exhaust)
						doAddCondition(cid, p.conditionOutfit)
						doAddCondition(cid, p.conditionAttributes)
						doAddCondition(cid, p.conditionHaste)
					else
						doPlayerSendCancel(cid, "You don't have enough mana.")
					end
				else
					doPlayerSendCancel(cid, "You don't have enough magic level.")
				end
			else
				doPlayerSendCancel(cid, "You don't have enough level.")
			end
		else
			doPlayerSendCancel(cid, "You are exhaust.")
		end
	else
		doPlayerSendCancel(cid, "Command param required.")
	end
	return true
end
Co doda? w talkactions.xml
PHP:
<talkaction words="transform" event="script" value="mount.lua"/>
Najwa?niejsze rzeczy podane, aby zadzia?a skrypt trzeba wpisa? (transform wolf)
 
Odp: TransForm and mount

Odp: TransForm and mount

Xart, nie obra? si?, ale to jest idiotyczne... Transform polega na tym, ?e czasowo, b?d? na sta?e nadaje Ci now? profesje, kt?ra mo?e mie? wi?kszy hit - x, wi?cej hp, many itd. To co Ty zrobi?e? powinno nosi? w?asn? nazw? i mie? szczeg?lniejsze zastosowanie. ; )
 
Odp: TransForm and mount

Odp: TransForm and mount

Skrypty zosta? do?? p??no dodany i nie mia?em ch?? pisania na jakiej zasadzie dzia?a, ale teraz mam czas wi?c opisze jego spos?b dzia?ania, bo skrypt dzia?a na takiej zasadzie obecnie jako spell, dodaje nam 50% wi?cej hp za to odbiera nam 50% many i czar zosta? tak zrobiony aby dzia?a? jak spell, i transformuje naszego bohatera na 1 minute w dane stworzenie, reszt? danych jak pobieranie many jak zmiana ?ycia czy many mo?e ka?dy sobie sam wyregulowa? ja mam jeszcze zamiar tylko bardziej z optymalizowa? ten skrypt, aby mniej miejsca zajmowa?, bo jak dla mnie to jeszcze nie jest dobrze to zakodowane, a nie obra?aj?c cie nie ka?dy transform musi zmienia? profesj? ,ten transform na dodawa? druidowi wi?cej mocy, ale to tak b?dzie na moim serwerze.
 
Status
Zamknięty.
Back
Do góry