• logo_cipsoft
    Nowe serwery zostały otwarte 27 Sie 2025:
    Escura (Retro Open PvP) Mystera (Retro Open PvP) us_logo Penumbra (Retro Open PvP)

-Skrypt Train room system

Status
Zamknięty.

panczo 1995

Advanced User
Dołączył
Kwiecień 5, 2009
Posty
383
Liczba reakcji
12
potrzebuje skryptu ktory po nacisnieciu na drzwi przeteleportuje nas do training roomu i przy tym jeszcze wyskoczy jakis napis za pomoc rep :)
 
Odp: Train room system

Zr?b w data/actions/scripts plik drzwi.lua i wklej do niego:

Kod:
function onUse(cid, item, fromPosition, itemEx, toPosition)


	local position = {x = 1000, y = 1000, z = 7}  --- pozycja gdzie ma teleportowac
	local napis = "Welcome in Training Room!"     --- napis jaki ma sie wyswietlac


	doTeleportThing(cid, position, TRUE)
	doCreatureSay(cid, napis, TALKTYPE_ORANGE_1)

	return TRUE
end

Ustaw w RME action_id tych drzwi na np. 9993 i wklej do actions.xml to:

Kod:
<action actionid="9993" script="drzwi.lua"/>
 
Odp: Train room system

Nie do konca mi o to chodzilo bo do kazdych drzwi bede musial robic osobno skrypt nie da sie jaos latwiej tego rozpisac zeby wszystko bylo w 1 skrypcie i bez pozycji?
 
Odp: Train room system

Nie wiem czy dok?adnie o to chodzi?o, ale zrobi?em tak, ?e je?li klikniemy na drzwi znajduj?ce si? na p??noc od nas to teleportuje nas 1 kratk? za drzwi, je?li na po?udnie to 1 kratk? do do?u od drzwi i tak dalej:


Kod:
function onUse(cid, item, fromPosition, itemEx, toPosition)

	local napis = "Welcome in Training Room!"     --- napis jaki ma sie wyswietlac

	local poz = getCreaturePosition(cid)
		if (poz.y-1 == toPosition.y) then
			pozycja = {x=toPosition.x, y=toPosition.y-1, z=toPosition.z}
		elseif (poz.y+1 == toPosition.y) then
			pozycja = {x=toPosition.x, y=toPosition.y+1, z=toPosition.z}
		elseif (poz.x+1 == toPosition.x) then
			pozycja = {x=toPosition.x+1, y=toPosition.y, z=toPosition.z}
		elseif (poz.x-1 == toPosition.x) then
			pozycja = {x=toPosition.x-1, y=toPosition.y, z=toPosition.z}
		end
		
	
	doTeleportThing(cid, pozycja, TRUE)
	doSendMagicEffect(pozycja, 10)
	doCreatureSay(cid, napis, TALKTYPE_ORANGE_1)


	return true
end
 
Odp: Train room system

O to wlasnie chodzilo super wszystko dziala tylko jeszcze mala prosba mozesz do tego dodac ze jak skonczymy trenowac i nacisniemy na drzwi aby wyjsc to pojawi sie napis i teleportuje nas na dana pozycje? :)
 
Odp: Train room system

Kod:
function onUse(cid, item, fromPosition, itemEx, toPosition)

	local napis_wejscie = "Welcome in Training Room!"     --- napis jaki ma sie wyswietlac przy wejsciu
	local napis_wyjscie = "Good training!"    		--- napis jaki ma sie wyswietlac przy wyjsciu
	local exit = {x=1000, y=1000, z=7}  	       --- gdzie ma nas teleportowac po wyjsciu

if (getTilePzInfo(fromPosition) == true) then 

	local poz = getCreaturePosition(cid)
		if (poz.y-1 == toPosition.y) then
			pozycja = {x=toPosition.x, y=toPosition.y-1, z=toPosition.z}
		elseif (poz.y+1 == toPosition.y) then
			pozycja = {x=toPosition.x, y=toPosition.y+1, z=toPosition.z}
		elseif (poz.x+1 == toPosition.x) then
			pozycja = {x=toPosition.x+1, y=toPosition.y, z=toPosition.z}
		elseif (poz.x-1 == toPosition.x) then
			pozycja = {x=toPosition.x-1, y=toPosition.y, z=toPosition.z}
		end
		
	
	doTeleportThing(cid, pozycja, true)
	doSendMagicEffect(pozycja, 10)
	doCreatureSay(cid, napis_wejscie, TALKTYPE_ORANGE_1)
else

	doTeleportThing(cid, exit, true)
	doSendMagicEffect(pozycja, 10)
	doCreatureSay(cid, napis_wyjscie, TALKTYPE_ORANGE_1)
end
	return true
end

Mo?e tak. Je?li jeste?my w pz to teleportuje nas do training roomu, ale je?li jeste?my poza pz, to po klikni?ciu teleportuje nas na dan? pozycj?.
 
Odp: Train room system

A da rade jakos zrobic bez tego pz? bo np przy jednych drzwiach dziala normalnie wrzuca nas do training romu i wyrzuca na pozycje a np przy 2 wrzuca do training romu i wyrzuca przed niego caly czas z tym 1 napisem ;/
 
Odp: Train room system

Poka? na screenie jak wygl?da przyk?adowy kawa?ek training roomu, tylko ?eby by?o wida? drzwi.
 
Odp: Train room system

Wsz?dzie poza train roomem z potworami (za drzwiami), jest protection zone?
 
Odp: Train room system

W takim razie nie wiem czemu nie dzia?a Ci skrypt UP, ale mo?esz spr?bowa? doda? drugi warunek, ale nie wiem czy co? to da:


Kod:
function onUse(cid, item, fromPosition, itemEx, toPosition)

	local napis_wejscie = "Welcome in Training Room!"     --- napis jaki ma sie wyswietlac przy wejsciu
	local napis_wyjscie = "Good training!"    		--- napis jaki ma sie wyswietlac przy wyjsciu
	local exit = {x=1000, y=1000, z=7}  	       --- gdzie ma nas teleportowac po wyjsciu

if (getTilePzInfo(fromPosition) == true) then 

	local poz = getCreaturePosition(cid)
		if (poz.y-1 == toPosition.y) then
			pozycja = {x=toPosition.x, y=toPosition.y-1, z=toPosition.z}
		elseif (poz.y+1 == toPosition.y) then
			pozycja = {x=toPosition.x, y=toPosition.y+1, z=toPosition.z}
		elseif (poz.x+1 == toPosition.x) then
			pozycja = {x=toPosition.x+1, y=toPosition.y, z=toPosition.z}
		elseif (poz.x-1 == toPosition.x) then
			pozycja = {x=toPosition.x-1, y=toPosition.y, z=toPosition.z}
		end
		
	
	doTeleportThing(cid, pozycja, true)
	doSendMagicEffect(pozycja, 10)
	doCreatureSay(cid, napis_wejscie, TALKTYPE_ORANGE_1)
        return true
elseif (getTilePzInfo(fromPosition) == false) then 

	doTeleportThing(cid, exit, true)
	doSendMagicEffect(pozycja, 10)
	doCreatureSay(cid, napis_wyjscie, TALKTYPE_ORANGE_1)
end
	return true
end
 
Status
Zamknięty.
Do góry