• 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!
  • 2026 staff recruitment is open! Check it out and consider applying!

Problem z kilkoma skryptami

Zacky

New Member
Joined
Jan 7, 2011
Messages
55
Reaction score
0
Location
Zielona Góra
Mam problem z kilkoma skryptami a mianowicie :
!aol (Wyskakuje : Przepraszam nie masz pieniedzy.)
!soft (Zabiera softy , nie zabiera gp)
!fire (Zabiera Firewalkery , nie zabiera gp)

Obawiam się , że te skrypty nie pełnią dobrze swojej funkcji bo zamieniłem na nowy items.xml
Chociaż to jest trochę dziwne bo po zamianie na dane z poprzedniego items.xml poszczególnych itemów takich jak
amulet of loss, soft boots , firewalker boots to także nie chciało działać to samo wyskakiwało.

Coś wstawić? ; p Proszę o szybką pomoc
 
Ja odpowiedziałem na nie sprecyzowane pytanie, nie umiesz zadawać pytań rzeczowych to w ogóle ich nie zadawaj. Jak tak trudno się domyśleć, to wstaw skrypty odpowiedzialne za te komendy, są w /data/talkactions/scripts.
 
Tylko właśnie sądze , że nie to jest przyczyną... ale dobra

aol.lua
local cena = 20000
local id = 2173
function onSay(cid, words, param)
if doPlayerRemoveMoney(cid, cena) == TRUE then
doPlayerAddItem(cid, 2173, 1)
doPlayerSendTextMessage(cid, 22, "Dostales aola!")
doSendMagicEffect(getPlayerPosition(cid), 36)
else
doPlayerSendTextMessage(cid, TALKTYPE_ORANGE_1, "Przepraszam nie masz pieniedzy.")
doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF)
end
end

soft.lua
local config = {
cost = 1000000,
idsoft = 2640,
idwornsoft = 10021
}
function onSay(cid, words, param)
local pos = getCreaturePosition(cid)
if getPlayerItemCount(cid, config.idwornsoft) >= 1 then
if getPlayerMoney(cid) >= config.cost then
doPlayerBuyItem(cid, config.idsoft, 1, config.cost, 1)
doPlayerRemoveItem(cid, config.idwornsoft, 1)
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Twoje Soft Boots Zostaly Naladowane.")
else
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Niemasz Kasy Na Naladowanie Soft Boots!")
end
else
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Niemasz Worn Soft Boots!")
end
return TRUE
end

fire.lua
local config = {
cost = 2000000,
idsoft = 9932,
idwornsoft = 10022
}
function onSay(cid, words, param)
local pos = getCreaturePosition(cid)
if getPlayerItemCount(cid, config.idwornsoft) >= 1 then
if getPlayerMoney(cid) >= config.cost then
doPlayerBuyItem(cid, config.idsoft, 1, config.cost, 1)
doPlayerRemoveItem(cid, config.idwornsoft, 1)
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Twoje Firewalkery Zostaly Naladowane.")
else
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Niemasz Kasy Na Naladowanie Firewalkerow!")
end
else
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Niemasz Worn Firewalker Boots!")
end
return TRUE
end

talkactions.xml (Fragment)
<talkaction words="!aol" script="aol.lua"/>
<talkaction words="!soft" script="soft.lua"/>
<talkaction words="!fire" script="fire.lua"/>
 
LUA:
function onSay(cid, words, param)
	if (doPlayerRemoveMoney(cid, 20000)) then
		doPlayerAddItem(cid, 2173, 1)
		doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "Dostales aola!")
		doSendMagicEffect(getPlayerPosition(cid), CONST_ME_FIREATTACK)
	else
		doPlayerSendTextMessage(cid, TALKTYPE_ORANGE_1, "Przepraszam nie masz pieniedzy.")
		doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF)
	end
	return true
end
 
Kurde tu jednak chodzi o items.xml wkleiłem stary i działa ale brakuje dużo itemów ... ; /
Ważne, że działa. To że brakuje przedmiotów to raczej przez to że podmieniłeś swój plik na jakiś inny z innego silniku (najprawdopodobniej także protokołu) - przywróć na oryginał i po problemie.
 
zacky, zdaje sie masz ver0.2 tfs tu sie mniej znam, ale z tego co napisales wynika ze masz cos z kasa
sprawdz jak to wyglada w banku i innych npc.

Zrozumialem tez ze zrobiles update.
Porownales wszystkie zmiany w skrpytach? Bo nie tylko zrodla sie zmieniaja.
 
No właśnie o to chodzi , że miałem wcześniej problem z brakującymi itemami typu
Coś tam coś tam id raporting to gm. No i pomyslałem , że te itemy są także w map editorze (ich nazwy i wgl wszystko takie same)
Więc wkleiłem items.xml z rme (Zawierał dokładnie identycznie opisane itemy więc nie wiedziałem dlaczego występują takie błędy..)
Remere's Map Editor\data\860\items.xml
Wersja silnika to tfs 0.4
Czy tam jest jakaś róznica ? bo ja jej nie zauważyłem...
 
No właśnie o to chodzi , że miałem wcześniej problem z brakującymi itemami typu
Coś tam coś tam id raporting to gm. No i pomyslałem , że te itemy są także w map editorze (ich nazwy i wgl wszystko takie same)
Więc wkleiłem items.xml z rme (Zawierał dokładnie identycznie opisane itemy więc nie wiedziałem dlaczego występują takie błędy..)
Remere's Map Editor\data\860\items.xml
Wersja silnika to tfs 0.4
Czy tam jest jakaś róznica ? bo ja jej nie zauważyłem...
Po co używasz items.xml od RME. W RME każdy item musi być osobno wypisany bez używania skrótów typu:
LUA:
<item fromid="7716" toid="7718" article="a" name="parasol" />
Również niektóre atrybuty są inne :
RME:
LUA:
	<item id="2160" article="a" name="crystal coin" plural="crystal coins">
		<attribute key="weight" value="10"/>
		<attribute key="currency" value="10000"/>
	</item>
TFS:
LUA:
	<item id="2160" article="a" name="crystal coin" plural="crystal coins">
		<attribute key="weight" value="10" />
		<attribute key="worth" value="10000" />
	</item>
 
Last edited:
Mógłbyś sprecyzować swoją wypowiedź? ...
Bo taki sarkazm do mnie nie przemawia

Jaki kurwa sarkazm ja pierdole, czemu zakładasz, że każdy na starcie chce cie przygonić?...

Zacky said:
Tylko właśnie sądze , że nie to jest przyczyną... ale dobra

Jak nie w skrypcie to kurwa gdzie może leżeć problem? Myśl czasem >.<



---------->
Dostałeś gotowe skrypty, zamiast zmieniać całe items.xml to może poprostu zmień konkretne źle działające linijki z itemsami? >.<

Już lepiej wklej itemy z tfs'a do folderu z remere'em to będziesz od razu widział w remere co masz podpisane, a czego nie, ale pamiętaj, że właśnie remere nie czyta deklaracji fromid toid więc każdy item musi być osobno..


Hmm ja zwykle robię w skryptach
if getPlayerItemCount(cid, itemid) >= count then
doRemove...

Zmień może na
if getPlayerMoney(cid) >= ilestam then
doRemovePlayerMoney(cid, ilestam)
...

Albo sprawdź w libach czy w czym tam masz, czy napewno jest dobrze zdefiniowana kasa (czyli 1 cc = 100 platinum coin = 10000 gold coin) itd.




--->
Btw mam na sprzedaż itemsy 8.60 baaaardzo dokładne jakbyś chciał kupić to na prv.
 
Dziękuje wszystkim za pomoc.
Wstawiłem stary items.xml i nie które brakujące itemy skopiowałem z items.xml z rme.
Tym razem szczególnie patrze na wynikające w nich różnice.
Nagle wszystkie funkcje zaczęły działać.
Aol , Softy, Firewalkery i inne.
 
Back
Top