ÖvHelp 34k (i)

Indította Magnum, 2015-02-17, 15:03:43

Sziasztok.

Valaki tudna tippet adni, hogy 34k-s sf-be miért nem veszi fel az öveket?

Beraktam ezt a questet.
Idézquest belt_system begin
    state start begin

        function is_belt()
            return item.vnum >= 18000 and item.vnum <= 18089
        end

        function equip_belt()
            item2.equip(11)
            pc.setqf('belt', item.vnum)
        end

        when 18000.use or 18001.use or 18002.use or 18003.use or 18004.use or 18005.use or 18006.use or 18007.use or
        18008.use or 18009.use or 18010.use or 18011.use or 18012.use or 18013.use or 18014.use or 18015.use or 18016.use or
        18017.use or 18018.use or 18019.use or 18020.use or 18021.use or 18022.use or 18023.use or 18024.use or 18025.use or
        18026.use or 18027.use or 18028.use or 18029.use or 18030.use or 18031.use or 18032.use or 18033.use or 18034.use or
        18035.use or 18036.use or 18037.use or 18038.use or 18039.use or 18040.use or 18041.use or 18042.use or 18043.use or
        18044.use or 18045.use or 18046.use or 18047.use or 18048.use or 18049.use or 18050.use or 18051.use or 18052.use or
        18053.use or 18054.use or 18055.use or 18056.use or 18057.use or 18058.use or 18059.use or 18060.use or 18061.use or
        18062.use or 18063.use or 18064.use or 18065.use or 18066.use or 18067.use or 18068.use or 18069.use or 18070.use or
        18071.use or 18072.use or 18073.use or 18074.use or 18075.use or 18076.use or 18077.use or 18078.use or 18079.use or
        18080.use or 18081.use or 18082.use or 18083.use or 18084.use or 18085.use or 18086.use or 18087.use or 18088.use or 18089.use begin
            local v = item.vnum
            local bonus = {{item2.get_attr(0)}, {item2.get_attr(1)}, {item2.get_attr(2)}, {item2.get_attr(3)}, {item2.get_attr(4)}, {item2.get_attr(5)}, {item2.get_attr(6)}}
            if belt_system.is_belt() and v ~= pc.getqf('belt') then
                belt_system.equip_belt()
            elseif item.select_cell(101) then
                item.remove()
                pc2.give_or_drop_item_and_select(v)
                for i = 1, table.getn(bonus) do
                    if tonumber(bonus[1]) > 0 then
                        item2.set_attr(i-1, bonus[1], bonus[2])
                    end
                end
            else
                belt_system.equip_belt()
            end
        end

        when 20090.take with belt_system.is_belt() begin
            local maintab = {
                [0] = {
                    {18000, 1, 50},
                    {18010, 2, 20},
                    {18020, 44, 1},
                    {18030, 44, 1},
                    {18040, 78, 1},
                    {18050, 79, 1},
                    {18060, 80, 1},
                    {18070, 81, 1},
                    {18080, 63, 1}
                },
                [1] = {
                    {18000, 1, 50},
                    {18010, 2, 20},
                    {18020, 44, 1},
                    {18030, 44, 1},
                    {18040, 78, 1},
                    {18050, 79, 1},
                    {18060, 80, 1},
                    {18070, 81, 1},
                    {18080, 63, 1}
                },
                [2] = {
                    {18000, 1, 100},
                    {18010, 2, 40},
                    {18020, 44, 1},
                    {18030, 44, 1},
                    {18040, 78, 1},
                    {18050, 79, 1},
                    {18060, 80, 1},
                    {18070, 81, 1},
                    {18080, 63, 1}
                }
            }
            if pc.count_item(18900) < 1 then
                syschat("Nincs nálad "..item_name(18900)..".")
                return
            end
            for i = 0, 2 do
                for k = 1, table.getn(maintab) do
                    if item.vnum >= maintab[k][1] and item.vnum <= maintab[k][1]+9 and item2.get_attr(i) == 0 then
                        if number(1,3) == 1 then
                            item2.set_attr(i, maintab[k][2], maintab[k][3])
                            syschat('Az öv Bónusz adása sikeres.')
                        else
                            syschat('Az öv bónusz adása nem sikerült.')
                        end
                    end
                end
                pc.remove_item(18900, 1)
            end
        end
    end
end


Beírtam ezt quest_functionsba:
Idézitem2.equip
item2.get_attr
item2.set_attr
pc2.give_or_drop_item_and_select


Beraktam a ezeket a libeket:
Idézwww.imer.cc/files/libgame_item2_pc2.so
http://imer.cc/files/libstdc++.so.6


Így néz ki start.sh:
Idéz#!/bin/sh


echo -e "\033[31m 
Üdvözöllek az NewPvP indító rendszerében \n
indítsd el a csatorna 1-et \n
1 - (1) Csatorna\033[0m"

read chs

case $chs in
1*)
   echo -e "\033[31m Adatbázis indítása ..\033[0m"
   cd ./g1/db && env LD_PRELOAD=/usr/home/game/share/notxt/libdb_notxt.so ./db &
   sleep 5
   clear
   echo -e "\033[31m \n Bejelentkezés indítása ..\033[0m"
   cd ./auth && env LD_PRELOAD=/usr/home/game/share/notxt/libgame_item2_pc2.so ./auth &
   sleep 5
   clear
   echo -e "\033[31m \n CH 1 indítása ..\033[0m"
   cd ./channel1/ && ./game &
   sleep 5
   clear
   echo -e "\033[31m \n CH 2 indítása ..\033[0m"
   cd ./channel2/ && ./game &
   sleep 5
   clear
   echo -e "\033[31m \n CH 99 indítása ..\033[0m"
   cd ./game99/ && ./game &
   sleep 5
   clear
   echo -e "\033[32m \n A szerver elindult!\033[0m"
;;
esac


Kliensben minden jónak tünik látszik a type minden, csak nem veszi fel.
18as typen mennek az övek.

kliensben hozzáadtad a helyet neki?

Igen hozzáadtam.
Látszik az övnek a helye is meg ha oda húzok valamit látszik, hogy van neki ott hely vagy hogy mondjam mint az ékszereknél.


                     "slot" : (
                              {"index":EQUIPMENT_START_INDEX+0, "x":39, "y":37, "width":32, "height":64},
                              {"index":EQUIPMENT_START_INDEX+1, "x":39, "y":2, "width":32, "height":32},
                              {"index":EQUIPMENT_START_INDEX+2, "x":39, "y":145, "width":32, "height":32},
                              {"index":EQUIPMENT_START_INDEX+3, "x":75, "y":67, "width":32, "height":32},
                              {"index":EQUIPMENT_START_INDEX+4, "x":3, "y":3, "width":32, "height":96},
                              {"index":EQUIPMENT_START_INDEX+5, "x":114, "y":84, "width":32, "height":32},
                              {"index":EQUIPMENT_START_INDEX+6, "x":114, "y":52, "width":32, "height":32},
                              {"index":EQUIPMENT_START_INDEX+7, "x":2, "y":113, "width":32, "height":32},
                              {"index":EQUIPMENT_START_INDEX+8, "x":75, "y":113, "width":32, "height":32},
                              {"index":EQUIPMENT_START_INDEX+9, "x":114, "y":1, "width":32, "height":32},
                              {"index":EQUIPMENT_START_INDEX+10, "x":75, "y":35, "width":32, "height":32},
                              {"index":EQUIPMENT_START_INDEX+11, "x":39, "y":106, "width":32, "height":32},
                           ),

cd ./auth && env LD_PRELOAD=/usr/home/game/share/notxt/libgame_item2_pc2.so ./auth
Ne az auth-ba írd, hanem a game-hez!

cd ./channel1/ && env LD_32_PRELOAD="/usr/m2/share/libs/libgame_item2_pc2.so" ./game &

LD_32_PRELOAD
helyett
LD_PRELOAD

ha igy sem megy, akkor a notxt helyére rakd be, ha VZ, mert a vz nem kezel egyszerre 2 öt, a az imer libel.

Üzenet összefésülés: 2015-02-17, 15:49:12

/usr/home/game/share/notxt/ <-- itt van a lib?

2015-02-17, 16:04:01 #5 Utolsó szerkesztés: 2015-02-17, 21:35:14 Szerző: Ancient
Idéz/usr/home/game/share/notxt/ <-- itt van a lib?
Igen ott van a lib.


Most átírtam start.sh-t így:
Idéz#!/bin/sh


echo -e "\033[31m 
Üdvözöllek az HopeWorld indító rendszerében \n
indítsd el a csatorna 1-et \n
1 - (1) Csatorna\033[0m"

read chs

case $chs in
1*)
   echo -e "\033[31m Adatbázis indítása ..\033[0m"
   cd ./g1/db && ./db &
   env LD_PRELOAD="/usr/home/game/share/notxt/libdb_notxt.so"
   sleep 2
   clear
   echo -e "\033[31m \n Bejelentkezés indítása ..\033[0m"
   sleep 2
   clear
   echo -e "\033[31m \n CH 1 indítása ..\033[0m"
   cd ./channel1/ && ./game &
   env LD_PRELOAD="/usr/home/game/share/notxt/libgame_item2_pc2.so" ./game &
   sleep 2
   clear
   echo -e "\033[31m \n CH 2 indítása ..\033[0m"
   cd ./channel2/ && ./game &
   env LD_PRELOAD="/usr/home/game/share/notxt/libgame_item2_pc2.so" ./game &
   sleep 2
   clear
   echo -e "\033[31m \n CH 99 indítása ..\033[0m"
   cd ./game99/ && ./game &
   env LD_PRELOAD="/usr/home/game/share/notxt/libgame_item2_pc2.so" ./game &
   sleep 2
   clear
   echo -e "\033[32m \n A szerver elindult!\033[0m"



;;
esac

De így sem veszi fel.

Üzenet összefésülés: 2015-02-17, 21:35:14

Ááá a start.sh ban volt a hiba már működik.
Köszönöm mindenkinek a segítséget.
Ezzel a start.sh-val megy.

Idéz#!/bin/sh


echo -e "\033[31m 
Üdvözöllek az HopeWorld indító rendszerében \n
indítsd el a csatorna 1-et \n
1 - (1) Csatorna\033[0m"

read chs

case $chs in
1*)
   echo -e "\033[31m Adatbázis indítása ..\033[0m"
   cd ./g1/db && env LD_PRELOAD=/usr/home/game/share/notxt/libdb_notxt.so ./db &
   sleep 5
   clear
   echo -e "\033[31m \n Bejelentkezés indítása ..\033[0m"
   cd ./auth && ./auth &
   sleep 5
   clear
   echo -e "\033[31m \n CH 1 indítása ..\033[0m"
   cd ./channel1/ && env LD_PRELOAD="/usr/home/game/share/notxt/libgame_item2_pc2.so" ./game &
   sleep 5
   clear
   echo -e "\033[31m \n CH 2 indítása ..\033[0m"
   cd ./channel2/ && env LD_PRELOAD="/usr/home/game/share/notxt/libgame_item2_pc2.so" ./game &
   sleep 5
   clear
   echo -e "\033[31m \n CH 99 indítása ..\033[0m"
   cd ./game99/ && env LD_PRELOAD="/usr/home/game/share/notxt/libgame_item2_pc2.so" ./game &
   sleep 5
   clear
   echo -e "\033[32m \n A szerver elindult!\033[0m"
;;
esac