Drop direct in inventar !!

Totalitatea subiectelor care nu respectă regulamentul impus in sectiunea "Probleme şi Întrebări" vor fi stocate aici.
Închis
Avatar utilizator
AndreyBăă
Nivel 1

Nivel 1
Mesaje: 104
Membru din: 04 Iun 2016, 11:43
Regat: Jinno
Aprecieri: 51  
Mulţumiri: 1  
 Contact:
Medalii

Salut , stie cineva cum fac sa pice dorp-ul in inventar de la un boss ?? Multumesc frumos :ymhug:
Avatar utilizator
VegaS
Membru Club

Membru Club
Mesaje: 233
Membru din: 30 Oct 2015, 17:31
Aprecieri: 68  
Mulţumiri: 298  
 Contact:
Medalii

Dacă te referi ca itemul dropat din mob_drop_item.txt dintr-o grup de genul:
Group	Group_0
{
	Mob	szBoss
	Type	drop
	1	50724	1	100
}
Trebuie să faci modificări în sursă mai exact din:
item_manager_read_tables.cpp
bool ITEM_MANAGER::ReadMonsterDropItemGroup(const char * c_pszFileName)
Nu este chiar așa ușor de a face asta :), dar cine știe, probabil cand voi avea timp voi face asta și voi posta un tutorial cu funcțiile necesare.


Mai exact ceea ce ai zis tu este:
pc.give_item2(vnum,count)
----------------------------------------------------
Dar poti face asta foarte usor in lua, poftim aici un tutorial ce l-am facut în urma cu un an:
Imagine
Quest:
quest vegas_common_drop begin
    state start begin
        when kill begin
              -- Vnum  *cantitate % *level_min *level_max
            local vegas_lista_drop = {
                {50314,  3,  1,  40},    --* Cartea Transformarii
                {50315,  3, 30,  60},    --* Cartea Transformarii Avansata
                {50316,  3, 50, 150},     --* Cartea Transformarii Expert
                {50301,  3,  1,  40},    --* Arta de razboi Sun-Zi
                {50302,  3, 30,  60},    --* Arta de razboi Wu-zi
                {50303,  3, 50, 120},     --* Weiliao zi

                {30265,  2, 30, 150},    --* Bucata de Medalie(1)
                {30266,  2, 30, 150},    --* Bucata de Medalie(2)
                {30267,  2, 30, 150},    --* Bucata de Medalie(3)
                {30268,  2, 30, 150},    --* Bucata de Medalie(4)
                {30269,  2, 30, 150},    --* Bucata de Medalie(5)
            }

            local sansa_random = number(1, table.getn(vegas_lista_drop))

            --** Nu poate fi dropat obiectul daca nu ai nivelul necesar, fie prea mic fie prea mare!
            if vegas_lista_drop[sansa_random][4] <= pc.get_level() then
                return
            end

            local sansa_drop = number(1, 100) == 50 --* [50] Șansa de dropare iteme random din -> [vegas_lista_drop]
            if pc.get_level() - npc.get_level() < 10 and vegas_lista_drop[sansa_random][2] >= sansa_drop then
            --* Limită de nivel care calculează diferenta dintre nivelul tău și nivelul țintei dacă este mai mică ca 10 doar atunci ai drop.
                 --* Functie fără această limită: if vegas_lista_drop[sansa_random][2] >= sansa_drop then
                if pc.get_level() >= vegas_lista_drop[sansa_random][3] and pc.get_level() <= vegas_lista_drop[sansa_random][4] then
                    pc.give_item2(vegas_lista_drop[sansa_random][1])
                end
            end
        end
    end
end
if pc.get_level() - npc.get_level() < 10 and vegas_lista_drop[sansa_random][2] >= sansa_drop then
--* Limită de nivel care calculează diferenta dintre nivelul tău și nivelul țintei dacă este mai mică ca 10 doar atunci ai drop.
Pentru scoatere modificați funcția în:
if vegas_lista_drop[sansa_random][2] >= sansa_drop then
- Puteți adăuga noi iteme fără limită

{50314,  3,  1,  40},
--* 50314 - Vnum item
--* 3 - Cantitate
--* 1 - Nivelul minim de la care începi să ai drop
--* 40 - Nivelul maxim pana la care ai drop

Puteți adăuga o restricție în caz că nu vrei ca quest-ul să ruleze în anumite hărți și la anumiti mobi.

//Caută:
if vegas_lista_drop[sansa_random][4] <= pc.get_level() then
                return
            end
//Mai jos adaugă:
local index_harti = {61,71,73,93}
                if tabel_(index_harti, pc.get_map_index()) then
                return
            end
Restul funcției pentru blocare o găsești aici: http://just4metin.ro/quest-uri/lua-func ... aps-t40600


PS: Modelul de mai sus este pentru toti mobii de a dropa, dar dacă vrei sa faci doar pentru un anumit mob etc.

Modifici

Cod: Selectaţi tot

        when kill begin
cu

Cod: Selectaţi tot

		when 101.kill begin
Avatar utilizator
AndreyBăă
Nivel 1

Nivel 1
Mesaje: 104
Membru din: 04 Iun 2016, 11:43
Regat: Jinno
Aprecieri: 51  
Mulţumiri: 1  
 Contact:
Medalii

Nu merge questul .. chiar nu stie nimeni o solutie ?? :-??
Avatar utilizator
VegaS
Membru Club

Membru Club
Mesaje: 233
Membru din: 30 Oct 2015, 17:31
Aprecieri: 68  
Mulţumiri: 298  
 Contact:
Medalii

AndreyBăă scrie:Nu merge questul .. chiar nu stie nimeni o solutie ?? :-??
Chiar așa penibil poți să fi? Adică eu încerc să te ajut ti-am dat și ala și asta e toată replicata ta?
**Nu merge questul .. chiar nu stie nimeni o solutie ??**
Păi tinere războinic dacă tu ești așa paralel și chiar vrei să faci modificări de astea, iti spun lasă-te de acum de administrat un server, si apucă-te de alt ceva.
Puteai foarte frumos să te exprimi altfel, cum se folosește sau etc.
local sansa_drop = number(1, 100)
Îți spune ceva funcția asta din quest? Deci vezi că vorbești aiurea fără să ai habar măcar nici 5% despre asta.
Ceva clar că nu îți functionează odată ce nu ai configurat șansa.

Și pana la urma eu nici nu trebuie să îți dau asta, tu ai spus doar cum se face xx sa dropezi direct din inventar, iar eu ti-am dat functia respectivă de unde ai de modificat in sursă care este destul de greu, dar pentru quest ti-am dat a doua varianta.
pc.give_item2(vnum,count)
Asta trebuia să îți dau doar, dar nah romanii nostri sunt prea retarzi , nici un multumesc sau ceva etc. direct băă, nu merge.

Baftă tinere atunci să te ajute altul.
Avatar utilizator
AndreyBăă
Nivel 1

Nivel 1
Mesaje: 104
Membru din: 04 Iun 2016, 11:43
Regat: Jinno
Aprecieri: 51  
Mulţumiri: 1  
 Contact:
Medalii

Pai posibil sa nu fii inteles eu bine .. cum se configureaza , eu am copiat quest-ul si am bagat doar la un anumit mob , si am bagat la level max 250 si nu pica nimic ..
Avatar utilizator
AndreyBăă
Nivel 1

Nivel 1
Mesaje: 104
Membru din: 04 Iun 2016, 11:43
Regat: Jinno
Aprecieri: 51  
Mulţumiri: 1  
 Contact:
Medalii

Asta imi da in Putty:

QUEST : vegas_common_drop
STATE : start
WHEN : 3901.kill
Calls undeclared function! :
npc.get_level
Abort (core dumped)
Avatar utilizator
AndreyBăă
Nivel 1

Nivel 1
Mesaje: 104
Membru din: 04 Iun 2016, 11:43
Regat: Jinno
Aprecieri: 51  
Mulţumiri: 1  
 Contact:
Medalii

Multumesc Cer T/C
Avatar utilizator
Yahiko
Membru Club

Membru Club
Mesaje: 3865
Membru din: 25 Mai 2015, 18:31
Aprecieri: 0
Mulţumiri: 4857  
Discord: Copiază ID
 Contact:
Medalii

Subiect inactiv. Arhivat.
*Contact Discord: Yahiko#2936
*Doar SMS: 0749592613
*Grup discord: Click
Cu stimă,
Yahiko.

GL & HF
Afișează semnătura
Închis
Răspunsuri
3
Vizualizări
467
Răspunsuri
0
Vizualizări
295
Răspunsuri
6
Vizualizări
475

Înapoi la “Arhivă Probleme şi Întrebări”

  • Informaţie
  • Cine este conectat

    Utilizatori ce ce navighează pe acest forum: Niciun utilizator înregistrat și 187 vizitatori