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

Exp rate box 20%

Status
Not open for further replies.

szajker123

New Member
Joined
May 12, 2012
Messages
195
Reaction score
0
Witam , potrzebuje skryptu na exp rate box ktory powieksza exp o 20% na 2 godziny.
Chodzi mi o to by jak uzyjesz box'a to on jest stale na 2h i jak padnie sie to on ( exp 20% wiecej ) dalej jest lub po wylogowaniu sie go nie tracilo i tez sie nie uzywal jesli jestesmy offline tylko gdy minie jego czas. (tibia 8.54 / tfs 0.3.5 ) Repp +++++ za pomoc.
 
to nie request bitch
skryptu nie chce mi się pisać ale.. dam rozwiązanie!

--> skrypt actions, onUse
używasz skrzyni, skrzynia znika, zmienia ci storage value w zależności od os.time (możesz to zrobić funkcją exhausteda osobnego ;p)

potem przechodzisz do skryptu creaturescript
i dajesz tam, że jeśli typek ma storage dany to mu dodaje do expa jakąś premie (20% więcej to robisz poprostu jakiś exp * 1.2)


nie wiem, może są jakieś funkcje zmieniania expa na X czasu, napewno jest funkcja do zmiany ExpRate, tym w sumie też możesz i dodać potem warunek do creaturescripta, że jeśli nie ma tego storaga to zmieni mu na zwykły exp rate


jak coś popierdoliłem to proszę bez pocisków
 
Ja nie kumam skryptow dlatego pytam o napisanie lub poprawienie jakiegos innego skryptu tak aby dzialal poprawnie.
 
Pay or die.
Skrypt nie obejdzie się bez dodania skryptu do onLogin/onLogout.
 
Ralcoral pomoglbys jakis skrypt przerobic lub cos ? * rep ++++++++ *
 
Reputacja mnie nie interesuje, a na pomoc bezinteresowną nie licz :). Wrzuć coś to może zmienię.
 
Mam takie cos ino ze to dziala jak mowilem ze jak sie padnie lub lognie to expa niema ;// a ponownie nieda
local config = {
rate = 2.0, -- 4x More Experience
time = 5, -- Hours of Exp Time
storage = 20012
}
local function endExpRate(cid)
if isPlayer(cid) == TRUE then
doPlayerSetRate(cid, SKILL__LEVEL, 1) -- config.lua rate
setPlayerStorageValue(cid, config.storage, -1)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_RED, "Your extra experience time has ended.")
end
end
function onUse(cid, item, fromPosition, itemEx, toPosition)
if(getPlayerStorageValue(cid, config.storage) < 0) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Your extra experience rate is now: " .. config.rate .. ". It will last for ".. config.time .." hours.")
doPlayerSetRate(cid, SKILL__LEVEL, config.rate)
setPlayerStorageValue(cid, config.storage, os.time() + config.time * 3600)
addEvent(endExpRate, config.time * 3600 * 1000, cid)
doRemoveItem(item.uid, 1)
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You still have extra experience time left.")
end
return TRUE
end
 
a pomoze to tak przerobic jak mowil " Seminari " ? Rep++++ :) prosze
 
niewiem wyczaiłem na kwejka i był to jeden z dwóch kwejków jakie mnie rozśmieszyły więc postanowiłem wrzucić, wrzucił bym też dawida rudego żyda, ale jeszcze bana za antysemityzm dostanę i będzie, że zły seminari kończy dzieło hitlera ;s

#temat
próbowałeś już coś ruszyć z exhaustedem?
 
nie czaje tego wiec prosze o pomoc w zmianie tamtego skruptu prosze ... :) repp+++++ refresh plx
 
Seminari napisz go mu i będzie z Ciebie pożytek i będziemy Cię chwalić.
 
Seminari napisz go mu i będzie z Ciebie pożytek i będziemy Cię chwalić.

czuje się potrzebny, jakie to wzruszające, że ktoś tam we wszechświecie czeka na moją pomoc w nadzieji, jestem niczym zwiastowany prorok, tylko mam nadzieje, że mnie nie powiesicie jak zacznę zbawiać

nie czaje tego wiec prosze o pomoc w zmianie tamtego skruptu prosze ... :) repp+++++ refresh plx

ty, a co jak ja ci zrobię skrypta, a ty potem już nigdy nie wejdziesz na otland i nie dostanę reputacji? :(

Nabij chociaż 30 czy tam 50 postów, żeby być wiarygodnym, bo narazie to chyba nie możesz dawać reputów. o_O
 
A kto zapłaci? Gdzie jest wkład własny?
 
fora sa poto by pomagac a nie za zaplate .. ;d na poczatku tematu na dole masz napisane ino prezerobic skrypt trza
 
Przerobić? To trzeba od początku napisać. Jak chcesz za darmo, to proszę sam sobie uproszczoną wersje wrzuciłeś :).
 
Vendeliko sprobuje twojej propozycji zobaczymy ( polacy omg za darmo nic nie zrobia ) ( sory za bledy jak cos )
 
Nie ma to jak polacy..zeby pomoc musisz im zaplacic.

@topic
Napisz w dziale requests moze ktos ci zrobi za darmo.


ale wy tęmpi jesteście, żeby taki skrypt działał i było git to trzeba pomyśleć, to nie jest coś typu użyj kamienia.. usuwanie kamienia dźwignią może każdy zrobić, a działanie na addeventach/os.time to już niby trochę wyżej..

niby

ja zaczynałem od takich addeventów, jako pierwszy mój skrypt było inq jak na rl (wszystkie misje)

pamiętam jaką radochę miałem jak użyłem holy watera na big boilu i wysokczył płomień itd.

albo jak użyłem w tej misji z nawiedzonym domem na liberty bay drzwi, zabiłem ghosta i po 10 sec otworzyły się drzwi!

a jak zrobiłem magic walla na końcu tak jak na rl, że się go podpala, to dopiero była podjara, że szok!

aha i wszystko to zrobiłem bez zadawania pytań do kogokolwiek, poprostu patrzyłem na inne skrypty i zobaczyłem jak konkretne funkcje działają, a wszystkie sposoby co ma jak działać (np. z tym magic wallem) rozpisałem sobie najpierw na kartce normalnej

A TY KURWA NIC NIE ZROBIŁEŚ TYLKO JESTEŚ SAM CHCIWY, POLISH BOARD TO NIE REQUEST, JAK KTOŚ CI POMAGA TO TYLKO DLATEGO, ŻE CHCE BYĆ POMOCNY, ALE TY NIE PROSISZ O POMOC W ZROZUMIENIU CZEGOŚ TYLKO O GOTOWCA, A GOTOWCA DO TEGO NIE DOSTANIESZ (za darmo)

no chyba, że coś zrobię komuś złego i będę miał wyżuty sumienia i z żałości napisze ten skrypt by było mi mniej przykro.



Btw. śmiejecie się z invoba, ale on kupował coś i potem pytał co i jak, żeby zrozumieć, a wy albo nie chcecie wydać kasy, a dostać skrypt, albo i tak nie próbujecie tego zrozumieć.
 
masz bo miałem coś podobnego kiedys na sewerze:

\data\actions\scripts\expBox.lua
Lua:
function onUse(cid, item, fromPosition, itemEx, toPosition)

	if exhaustion.check(cid, configExp.storageExh) then
		doPlayerSendCancel(cid, 'Your bonus experience is still active. (Left: ' .. exhaustion.get(cid, configExp.storageExh) ..' seconds.)')
		return true
	end
	

	if configExp.work then
		local yourRates = getPlayerRates(cid)[SKILL__LEVEL]
		local bonusExpRate = yourRates + (configExp.rate * yourRates/100)
		
		doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE,  "Your old rates: " .. yourRates .. "x, now: " .. bonusExpRate .."x.")
		doPlayerSetRate(cid, SKILL__LEVEL, bonusExpRate)
		
		exhaustion.set(cid, configExp.storageExh, configExp.workTime * 60)
		addEvent(bonusExp, configExp.workTime * 60 * 1000, cid)
		
		local animText = math.random(1,200)
		doSendMagicEffect(fromPosition, 10) -- jakis efekt
		doSendAnimatedText(fromPosition, '!Bonus Exp!', animText) -- animowany napis
		
	else
	
		doPlayerSendCancel(cid, 'Bonus experience is off.')
		
		return true
	end

	return true
end


to wklej do \data\lib\function.lua (na koniec pliku) [ tu masz wszystkie ustawiania)
Lua:
configExp = 
	{
	work = true, -- dziala czy nie true lub false (nie działa)
	rate = 20, --  ile więcej % expa,
	storageExh = 43320,
	workTime = 3, -- min czas działania bonus expa,
	resetExp = 1.0 -- reset expa.
	}

function bonusExp(cid)
	if isCreature(cid) == false then
		return true
	end
	
		doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_RED,  "Your bonus experience just ended.")
		doPlayerSetRate(cid, SKILL__LEVEL, configExp.resetExp)
		
	return true
end

a to do data\creaturescripts\scripts\login.lua - całkeim na dole przed :

Lua:
      return true
end

wklej:

Lua:
	if configExp.work then

		if exhaustion.check(cid, configExp.storageExh) then
		
		local yourRates = getPlayerRates(cid)[SKILL__LEVEL]
		local bonusExpRate = yourRates + (configExp.rate * yourRates/100)
		local lastTime = exhaustion.get(cid, configExp.storageExh)
		
			doPlayerSetRate(cid, SKILL__LEVEL, bonusExpRate)
			doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'Your bonus experience is still active. (Left: ' .. lastTime ..' seconds.)')
			addEvent(bonusExp, lastTime * 1000, cid)
		end

	end


powinno działać jak cos to pisz ;)
 
Status
Not open for further replies.
Back
Top