Co nowego?
Tibia.net.pl

PO ZMIANIE SKRYPTU FORUM MOGĄ WYSTĘPOWAĆ PROBLEMY Z LOGOWANIEM. "ZRESETUJ HASŁO(klik)", ABY SIĘ ZALOGOWAĆ .

JEŻELI NIE PAMIĘTASZ STAREGO E-MAILA ZAJRZYJ NA NASZEGO "DISCORDA(klik)" LUB "NAPISZ E-MAILA(klik)"

Creaturescripts Gracz cid awansowa? na poziom 500!

Status
Zamknięty.

Kahras

Stały bywalec
Dołączył
Sierpień 26, 2011
Posty
2712
Liczba reakcji
166
Wiek
21
Witam was bardzo drodzy!
Dzisiaj nadszed? dzie? kiedy napisa?em swojego 1 rozbudowanego skrypta - umieszczam go tutaj poniewa? czasami widzia?em takie osoby kt?re prosi?y o ten skrypt.

Skrypt dzia?a tak: gdy gracz wbije poziom(ustawiony przez nas) wy?wietli si? napis:
PHP:
Gracz cid awansowa? na poziom 400
To by?o by zbyt ?atwe gdybym nic wi?cej nie doda? m.in doda?em jeszcze ?e np. przy awansie na dany poziom mo?na zrobi? ?e gracz dostaje dany item w danej ilo?ci(oczywi?cie tylko raz wy?wietla si? napis i tylko raz mo?na dosta? item) przyk?ad:

PHP:
	[50] = {give = "yes", itemid = 2160, count = 5, storage = 350000},
	[100] = {give = "yes", itemid = 2160, count = 50, storage = 350001},
	[200] = {give = "no", itemid = 2650, count = 1, storage = 350002}
  • Gracz gdy wbije 50 poziom wy?wietli si? wiadomo?? oraz dostanie 5 cc.
  • Gracz gdy wbije 100 poziom wy?wietli si? komunikat oraz dostanie 50 cc.
  • Gracz gdy wbije 200 poziom wy?wietli si? komunikat i nic nie dostanie.


Instrukcja:
  • give = "yes/no" gdy wpiszemy "yes" to gracz otrzyma item a gdy wpiszemy "no" to nie otrzyma.
  • itemid = "id itemku" chyba nie trzeba t?umaczy?
  • count = "5" ilo?? itemu kt?rego zadeklarowali?my up.
  • storage = "350000" najlepiej nie zmienia? a gdy dodajemy now? tabelk? dodawa? +1


Instalacja:

Wchodzimy w OTS -> data -> creaturescripts-tworzymy nowy plik.lua i wklejamy to:


PHP:
-- Author: Kahras // TIBIA.NET.PL \\ Help: Matt --
function onAdvance(cid, skill, oldLevel, newLevel)
-- [level] = {give = "yes/no", itemid = iditem, count = count, storage = storage}
local poziomy = {
	[50] = {give = "no", itemid = 2382, count = 5, storage = 350001},
	[100] = {give = "yes", itemid = 2160, count = 15, storage = 350002},
	[150] = {give = "yes", itemid = 2160, count = 50, storage = 350003},
	[200] = {give = "no", itemid = 2650, count = 100, storage = 350004}
	}
	for k, v in pairs(poziomy) do
		if getPlayerStorageValue(cid, v.storage) == -1 then
		if(newLevel == k) then
		setPlayerStorageValue(cid, v.storage, 1)
			doBroadcastMessage("Gracz "..getPlayerName(cid).." awansowal na poziom "..newLevel.." !\n Gratulujemy!")
					if(v.give) then
			v.give = getBooleanFromString(v.give)
		end
	if(not v.give) then
			return false
		end
			doPlayerAddItem(cid, v.itemid, v.count)
	end
	end
		end
	return TRUE
end


Teraz cofamy si? o jeden folder i otwieramy creaturescripts.xml i na samym dole wklejamy to:



PHP:
<event type="advance" name="Osiagniecia" event="script" value="plik.lua"/>

Nast?pnie resetujemy silnik b?d? w grze piszemy /reload creaturescripts


Informacj?:
Author: Kahras
Help: Matt - og?lnie pom?g? mi w paru rzeczach.
Testowane: TFS 0.4 (ver t.9.60) use 8.42+



My?l? ?e skrypt wam si? przyda - zapraszam do komentowania mo?e macie jakie? propozycje ?eby urozmaici? skrypt to prosz? bardzo piszcie.:lol:



ZABRANIAM UMIESZCZANIA SKRYPTU NA INNYM FORUM!
 

Matt

Zbanowany
Dołączył
Maj 9, 2013
Posty
595
Liczba reakcji
46
Odp: Gracz cid awansowa? na poziom 500!

Nie pro? o reputacj?.
Co do skryptu no jest w porz?dku, ale jak pisa?em to jest ?miechowe troch? - if(not v.give or not v.give) then
A tak to dobrze Ci wysz?o.
 

Placek

Blue Waffle
Dołączył
Wrzesień 30, 2008
Posty
6764
Liczba reakcji
658
Wiek
5
Odp: Gracz cid awansowa? na poziom 500!

@up
To be not or not to be. Etc, etc...
 

Zbizu

Luakami
Dołączył
Marzec 13, 2010
Posty
719
Liczba reakcji
104
Wiek
24
Odp: Gracz cid awansowa? na poziom 500!

skrypt i tak b?dzie wykonywany co level, wi?c nie wiem po co ta p?tla
[LUA] -- poprawka by Zbizu, zabraniam wrzucania w pierwszy post tematu
-- swoja droga i tak oba skrypty naleza do forum, maja to gdzies w regulaminie czy tam polityce prywatnosci
-- fajnie, nie?
function onAdvance(cid, skill, oldLevel, newLevel)
local poziomy = {
[50] = {storage = 350001}, -- brak nagrody
[100] = {itemid = 2160, storage = 350002}, -- 1 cc
[150] = {itemid = 2160, count = 50, storage = 350003} -- 50 cc
}

k = oldLevel
if poziomy[k] ~= nil and getPlayerStorageValue(cid, poziomy[k].storage) < 1 then
setPlayerStorageValue(cid, poziomy[k].storage, 1)
doBroadcastMessage("Gracz "..getPlayerName(cid).." awansowal na poziom "..newLevel.." !\n Gratulujemy!")
if poziomy[k].itemid ~= nil then
if poziomy[k].count == nil then amount = 1 else amount = poziomy[k].count end
doPlayerAddItem(cid, poziomy[k].itemid, amount)
end
end
return true
end[/LUA]
Zabraniaj dalej, mog? napisa? lepszy bez opierania si? na twoim i sam wrzuci?
oraz stwierdzam ?e zas?uguje na reputacj?!:lol:
chyba cie pojeba?o :lol2: na necie i tak jest ju? lepszy:

Notka moderatorska:
Poprawi?em znaczniki


nie prosi?em o to, mo?e mi si? quote podoba, co?
 
Ostatnia edycja:

Kahras

Stały bywalec
Dołączył
Sierpień 26, 2011
Posty
2712
Liczba reakcji
166
Wiek
21
Odp: Gracz cid awansowa? na poziom 500!

Nie pro? o reputacj?.
Co do skryptu no jest w porz?dku, ale jak pisa?em to jest ?miechowe troch? - if(not v.give or not v.give) then
A tak to dobrze Ci wysz?o.
No dobra jak mnie nie lubicie to ju? nie prosz? o reputacje :<


Zabraniaj dalej, mog? napisa? lepszy bez opierania si? na twoim i sam wrzuci?
chyba cie pojeba?o :lol2: na necie i tak jest ju? lepszy:
A sobie napisz i wrzu? na ka?de forum mi to nie przeszkadza :p
Si? dopiero ucz? :)



@Kiki~
poprawione:)
 
Ostatnia edycja:

Kahras

Stały bywalec
Dołączył
Sierpień 26, 2011
Posty
2712
Liczba reakcji
166
Wiek
21
Odp: Gracz cid awansowa? na poziom 500!

Re fresh
 

Kahras

Stały bywalec
Dołączył
Sierpień 26, 2011
Posty
2712
Liczba reakcji
166
Wiek
21
Odp: Gracz cid awansowa? na poziom 500!

nikt nie skomentuje ?
 

FioletowyAka

Nowy użytkownik
Dołączył
Kwiecień 28, 2013
Posty
1
Liczba reakcji
1
Odp: Gracz cid awansowa? na poziom 500!

Skrypt dobry, nie ma syfu w kodzie, prosto i funkcjonalnie. Dodam na sw?j serwer :)
 

Dantez

Moim sekretem jest ciasto
Dołączył
Maj 22, 2008
Posty
1206
Liczba reakcji
201
Odp: Gracz cid awansowa? na poziom 500!

Za t? p?tle to bym ci odj?? reputacje, ale si? nie da :(
 

kkmks

Stały bywalec
Dołączył
Kwiecień 5, 2008
Posty
141
Liczba reakcji
3
Wiek
29
Odp: Gracz cid awansowa? na poziom 500!

my?lenia si? nie da nauczy? ...
 
Status
Zamknięty.
Do góry