Reklama
Pokazuje wyniki od 1 do 12 z 12

Temat: [8.54] Drzwi - blokowane przez ogień.

  1. #1
    Avatar GM Esio
    Data rejestracji
    2007
    Położenie
    Mysłowice
    Wiek
    32
    Posty
    333
    Siła reputacji
    18

    Domyślny [8.54] Drzwi - blokowane przez ogień.

    Witam, mam problem odnoście tego, że gdy np. osoba stanie w drzwiach odpowiedzialnych za poziom i w nich stoi, a demon rzuci pod tą postać ogień lub inny field i osoba z tych drzwi zejdzie (zamkną się), nie da się ich otworzyć, gdyż pod nimi jest ogień. Dopiero gdy zniknie ogień da się wejść:)



    Kod:
    function onStepOut(cid, item, position, fromPosition)
    	local newPosition = {x = position.x, y = position.y, z = position.z}
    	if(isInArray(verticalOpenDoors, item.itemid)) then
    		newPosition.x = newPosition.x + 1
    	else
    		newPosition.y = newPosition.y + 1
    	end
    
    	doRelocate(position, newPosition)
    	local tmpPos = {x = position.x, y = position.y, z = position.z, stackpos = -1}
    	local tileCount = getTileThingByPos(tmpPos)
    
    	local i = 1
    	local tmpItem = {uid = 1}
    	while(tmpItem.uid ~= 0 and i < tileCount) do
    		tmpPos.stackpos = i
    		tmpItem = getTileThingByPos(tmpPos)
    		if(tmpItem.uid ~= item.uid and tmpItem.uid ~= 0 and isMoveable(tmpItem.uid)) then
    			doRemoveItem(tmpItem.uid)
    		else
    			i = i + 1
    		end
    	end
    
    	doTransformItem(item.uid, item.itemid - 1)
    	return true
    end
    http://ots.tibiaserver.pl/tibiaserver.gif

  2. #2
    Avatar Grim90
    Data rejestracji
    2007
    Położenie
    Toruń / Brzozówka
    Wiek
    34
    Posty
    586
    Siła reputacji
    17

    Domyślny

    Cytuj GM Esio napisał Pokaż post
    Cytat został ukryty, ponieważ ignorujesz tego użytkownika. Pokaż cytat.
    Witam, mam problem odnoście tego, że gdy np. osoba stanie w drzwiach odpowiedzialnych za poziom i w nich stoi, a demon rzuci pod tą postać ogień lub inny field i osoba z tych drzwi zejdzie (zamkną się), nie da się ich otworzyć, gdyż pod nimi jest ogień. Dopiero gdy zniknie ogień da się wejść:)



    Kod:
    function onStepOut(cid, item, position, fromPosition)
    	local newPosition = {x = position.x, y = position.y, z = position.z}
    	if(isInArray(verticalOpenDoors, item.itemid)) then
    		newPosition.x = newPosition.x + 1
    	else
    		newPosition.y = newPosition.y + 1
    	end
    
    	doRelocate(position, newPosition)
    	local tmpPos = {x = position.x, y = position.y, z = position.z, stackpos = -1}
    	local tileCount = getTileThingByPos(tmpPos)
    
    	local i = 1
    	local tmpItem = {uid = 1}
    	while(tmpItem.uid ~= 0 and i < tileCount) do
    		tmpPos.stackpos = i
    		tmpItem = getTileThingByPos(tmpPos)
    		if(tmpItem.uid ~= item.uid and tmpItem.uid ~= 0 and isMoveable(tmpItem.uid)) then
    			doRemoveItem(tmpItem.uid)
    		else
    			i = i + 1
    		end
    	end
    
    	doTransformItem(item.uid, item.itemid - 1)
    	return true
    end
    Coś podobnego pisałem w innym temacie.

    Użyj getThingFromPos( { x = 1, y = 1, z = 1, stackpos = 1 } )

    Oczywiście podmień wartości. Aby pobrać fielda (w tym przypadku firefielda) użyj stackpos 254.

    Naturalnie usuń go -> doRemoveItem.
    Piszę skrypty do OTS. Chcesz mieć unikalny quest, lub skrypt na swoim serwerze? Pisz do mnie. Na pewno się dogadamy.
    Piszę skrypty PHP, strony oraz gotowe serwisy, jeśli jesteś zainteresowany, napisz.
    http://radeg.pl

    Masz facebooka? Zapraszamy do grupy: Grim OTS!
    http://www.facebook.com/?ref=logo#!/...07707075989449

  3. Reklama
  4. #3
    Avatar GM Esio
    Data rejestracji
    2007
    Położenie
    Mysłowice
    Wiek
    32
    Posty
    333
    Siła reputacji
    18

    Domyślny

    poprawiłem to tak jak mówiłeś i nie działa,chyba, że źle to zrobiłem.
    http://ots.tibiaserver.pl/tibiaserver.gif

  5. #4
    Avatar Grim90
    Data rejestracji
    2007
    Położenie
    Toruń / Brzozówka
    Wiek
    34
    Posty
    586
    Siła reputacji
    17

    Domyślny

    Cytuj GM Esio napisał Pokaż post
    Cytat został ukryty, ponieważ ignorujesz tego użytkownika. Pokaż cytat.
    poprawiłem to tak jak mówiłeś i nie działa,chyba, że źle to zrobiłem.
    No to pokaż skrypt.
    Piszę skrypty do OTS. Chcesz mieć unikalny quest, lub skrypt na swoim serwerze? Pisz do mnie. Na pewno się dogadamy.
    Piszę skrypty PHP, strony oraz gotowe serwisy, jeśli jesteś zainteresowany, napisz.
    http://radeg.pl

    Masz facebooka? Zapraszamy do grupy: Grim OTS!
    http://www.facebook.com/?ref=logo#!/...07707075989449

  6. #5
    Avatar GM Esio
    Data rejestracji
    2007
    Położenie
    Mysłowice
    Wiek
    32
    Posty
    333
    Siła reputacji
    18

    Domyślny

    Kod:
    function onStepOut(cid, item, position, fromPosition)
    	local newPosition = {x = position.x, y = position.y, z = position.z, stackpos = 254}
    	if(isInArray(verticalOpenDoors, item.itemid)) then
    		newPosition.x = newPosition.x + 1
    	else
    		newPosition.y = newPosition.y + 1
    	end
    
    	doRelocate(position, newPosition)
    	local tmpPos = {x = position.x, y = position.y, z = position.z, stackpos = 254}
    	local tileCount = getThingFromPos(tmpPos)
    
    	local i = 1
    	local tmpItem = {uid = 1}
    	while(tmpItem.uid ~= 0 and i < tileCount) do
    		tmpPos.stackpos = i
    		tmpItem = getThingFromPos(tmpPos)
    		if(tmpItem.uid ~= item.uid and tmpItem.uid ~= 0 and isMoveable(tmpItem.uid)) then
    		else
    			i = i + 1
    		end
    	end
    
    	doTransformItem(item.uid, item.itemid - 1)
    	return true
    end
    http://ots.tibiaserver.pl/tibiaserver.gif

  7. #6
    Avatar Grim90
    Data rejestracji
    2007
    Położenie
    Toruń / Brzozówka
    Wiek
    34
    Posty
    586
    Siła reputacji
    17

    Domyślny

    Cytuj GM Esio napisał Pokaż post
    Cytat został ukryty, ponieważ ignorujesz tego użytkownika. Pokaż cytat.
    Kod:
    function onStepOut(cid, item, position, fromPosition)
    	local newPosition = {x = position.x, y = position.y, z = position.z, stackpos = 254}
    	if(isInArray(verticalOpenDoors, item.itemid)) then
    		newPosition.x = newPosition.x + 1
    	else
    		newPosition.y = newPosition.y + 1
    	end
    
    	doRelocate(position, newPosition)
    	local tmpPos = {x = position.x, y = position.y, z = position.z, stackpos = 254}
    	local tileCount = getThingFromPos(tmpPos)
    
    	local i = 1
    	local tmpItem = {uid = 1}
    	while(tmpItem.uid ~= 0 and i < tileCount) do
    		tmpPos.stackpos = i
    		tmpItem = getThingFromPos(tmpPos)
    		if(tmpItem.uid ~= item.uid and tmpItem.uid ~= 0 and isMoveable(tmpItem.uid)) then
    		else
    			i = i + 1
    		end
    	end
    
    	doTransformItem(item.uid, item.itemid - 1)
    	return true
    end
    Jak ma działać, skoro nie ma doRemoveItem?
    Piszę skrypty do OTS. Chcesz mieć unikalny quest, lub skrypt na swoim serwerze? Pisz do mnie. Na pewno się dogadamy.
    Piszę skrypty PHP, strony oraz gotowe serwisy, jeśli jesteś zainteresowany, napisz.
    http://radeg.pl

    Masz facebooka? Zapraszamy do grupy: Grim OTS!
    http://www.facebook.com/?ref=logo#!/...07707075989449

  8. #7
    Avatar GM Esio
    Data rejestracji
    2007
    Położenie
    Mysłowice
    Wiek
    32
    Posty
    333
    Siła reputacji
    18

    Domyślny

    To dlaczego kazałeś mi usunąć?

    Naturalnie usuń go -> doRemoveItem.
    @edit
    po dodaniu tej funkcji tak czy siak nie działa :( drzwi się nie zamykają, a gdy chce je zamknąć to znikają :(
    Ostatnio zmieniony przez GM Esio : 06-09-2010, 07:28
    http://ots.tibiaserver.pl/tibiaserver.gif

  9. #8
    Avatar Siw
    Data rejestracji
    2010
    Wiek
    28
    Posty
    152
    Siła reputacji
    15

    Domyślny

    Cytuj GM Esio napisał Pokaż post
    Cytat został ukryty, ponieważ ignorujesz tego użytkownika. Pokaż cytat.
    To dlaczego kazałeś mi usunąć?
    Usuń go - fielda D: komendą którą podał :P

  10. #9
    Avatar bolek
    Data rejestracji
    2005
    Położenie
    -
    Wiek
    33
    Posty
    493
    Siła reputacji
    19

    Domyślny

    function onStepOut(cid, item, position, fromPosition)
    local newPosition = {x = position.x, y = position.y, z = position.z}
    if(isInArray(verticalOpenDoors, item.itemid)) then
    newPosition.x = newPosition.x + 1
    else
    newPosition.y = newPosition.y + 1
    end

    doRelocate(position, newPosition)
    local tmpPos = {x = position.x, y = position.y, z = position.z, stackpos = -1}
    local tileCount = getTileThingByPos(tmpPos)

    local i = 1
    local tmpItem = {uid = 1}
    while(tmpItem.uid ~= 0 and i < tileCount) do
    tmpPos.stackpos = i
    tmpItem = getTileThingByPos(tmpPos)
    if(tmpItem.uid ~= item.uid and tmpItem.uid ~= 0 and isMoveable(tmpItem.uid)) then
    doRemoveItem(tmpItem.uid)
    else
    i = i + 1
    end
    end

    doTransformItem(item.uid, item.itemid - 1)
    return true
    end
    Usuń zaznaczone na czerwono i będzie działać na 100%, nie wiem kto to tam dodał, poza tym wszyscy #up bądźcie tak łaskawi i czytajcie kod a nie z głowy piszcie, bo potem tak wychodzi, że każecie mu jakieś bzdury robić...
    Ostatnio zmieniony przez bolek : 06-09-2010, 12:15

  11. #10
    Avatar Grim90
    Data rejestracji
    2007
    Położenie
    Toruń / Brzozówka
    Wiek
    34
    Posty
    586
    Siła reputacji
    17

    Domyślny

    Cytuj bolek napisał Pokaż post
    Cytat został ukryty, ponieważ ignorujesz tego użytkownika. Pokaż cytat.
    Usuń zaznaczone na czerwono i będzie działać na 100%, nie wiem kto to tam dodał, poza tym wszyscy #up bądźcie tak łaskawi i czytajcie kod a nie z głowy piszcie, bo potem tak wychodzi, że każecie mu jakieś bzdury robić...
    No przecież nie będę za niego skryptów pisać, jedynie wskazać mu mogę, co powinien zrobić, pomóc, albo podać funkcję, a jeśli ma jakieś błędy to już jego sprawa i niech sobie z nimi radzi, przecież muszę go uszanować, on też ma mózg, gdybym to za niego zrobił, to tak, jak bym go miał za prymitywa, który nie myśli.
    Ostatnio zmieniony przez Grim90 : 06-09-2010, 12:25
    Piszę skrypty do OTS. Chcesz mieć unikalny quest, lub skrypt na swoim serwerze? Pisz do mnie. Na pewno się dogadamy.
    Piszę skrypty PHP, strony oraz gotowe serwisy, jeśli jesteś zainteresowany, napisz.
    http://radeg.pl

    Masz facebooka? Zapraszamy do grupy: Grim OTS!
    http://www.facebook.com/?ref=logo#!/...07707075989449

  12. #11
    Avatar bolek
    Data rejestracji
    2005
    Położenie
    -
    Wiek
    33
    Posty
    493
    Siła reputacji
    19

    Domyślny

    Cytuj Grim90 napisał Pokaż post
    Cytat został ukryty, ponieważ ignorujesz tego użytkownika. Pokaż cytat.
    No przecież nie będę za niego skryptów pisać, jedynie wskazać mu mogę, co powinien zrobić, pomóc, albo podać funkcję, a jeśli ma jakieś błędy to już jego sprawa i niech sobie z nimi radzi, przecież muszę go uszanować, on też ma mózg, gdybym to za niego zrobił, to tak, jak bym go miał za prymitywa, który nie myśli.
    W sumie tu muszę się zgodzić, jakby nie patrzeć to sam powinien to wymyśleć (czyt. zobaczyć).

  13. #12
    Avatar GM Esio
    Data rejestracji
    2007
    Położenie
    Mysłowice
    Wiek
    32
    Posty
    333
    Siła reputacji
    18

    Domyślny

    Dziękuje za pomoc.

    @grim.

    Nie obraź się, ale uważam, że forum jest od tego aby komuś pomóc. Jednakże w ostateczności zawszę piszę na forum bo być może nie wiem na czym polega problem i dlatego proszę użytkowników o pomoc. Nie chce mi się wierzyć, aby każdy wiedział wszystko i o wszystkim :)

    Jeszcze raz dziękuje za pomoc.
    Pozdrawiam,
    Esio.
    http://ots.tibiaserver.pl/tibiaserver.gif

Reklama

Informacje o temacie

Użytkownicy przeglądający temat

Aktualnie 1 użytkowników przegląda ten temat. (0 użytkowników i 1 gości)

Podobne tematy

  1. Ogien
    Przez solp w dziale Tibia
    Odpowiedzi: 14
    Ostatni post: 19-05-2013, 18:39
  2. League of Legends ogien kox najlepszy gracz sezonu 2
    Przez Niewidomy w dziale Inne gry
    Odpowiedzi: 36
    Ostatni post: 20-08-2012, 09:56
  3. Odpowiedzi: 2
    Ostatni post: 19-09-2010, 09:49
  4. [8.0] Powiększający się ogień
    Przez dragon1801 w dziale Strefa developerska
    Odpowiedzi: 8
    Ostatni post: 23-03-2010, 00:02
  5. Drzwi 300lv w Kazo
    Przez konto usunięte w dziale Tibia
    Odpowiedzi: 36
    Ostatni post: 22-12-2006, 23:12

Zakładki

Zakładki

Zasady postowania

  • Nie możesz pisać nowych tematów
  • Nie możesz pisać postów
  • Nie możesz używać załączników
  • Nie możesz edytować swoich postów
  •