Unmantained Guida [RELEASE] LfLib - Funzioni aggiuntive per le tue quest

  • Autore discussione Autore discussione LF95
  • Data d'inizio Data d'inizio
Una guida contrassegnata come Unmantained contiene informazioni su un argomento obsoleto, non più utile o files non aggiornati da parte del creatore.
Stato
Discussione chiusa ad ulteriori risposte.
Una cosa molto utile che potresti mettere è una funzione di quelle che si mettono sul when (login, logout etc) però che funzioni quando il pg entra in certo raggio di coordinate es: when pg.is_in(x1,y1,x2,y2) begin, o una cosa simile. Se non erro di base c'è il when RUN, che però non funziona.

Ci sono già le funzioni che chiedi :\
 
Esatto Bloddy, sarebbe una cosa molto utile, non pensate?
Comunque, scusate se ancora vi chiedo aiuto, sto provando a fare uno script per uppare gli oggetti utilizzando le funzioni di LF, ma sono bloccato ad un punto:
trascino l'oggetto sul npc desiderato, salvo tutti i bonus e le pietre dell'oggetto, dopodichè lo rimuovo con item.remove e faccio sì che mi viene dato lo stesso oggetto ma con vnum+1, bene finquì tutto ok, l'oggetto mi viene dato eccetera, ma come faccio a ri-istanziare questo nuovo oggetto appena creato? Qualcuno sa darmi una mano? Grazie in anticipo :)
 
Ci ho provato ma non lo istanzia, posto il codice:
nextvnum = tonumber(item.vnum+1)
cella = item.get_cell()
say(nextvnum) --debug
say(cella)
item.remove()
pc.give_item(1, nextvnum)
item.select_cell(cella)
lf_item.set_attribute(0, id0, value0) etc
 
ho una piccola richiesta. puoi creare una funzione che permette di individuare un player e mettergli un target sopra?

se già esistesse potresti segnalarmi la funziona e la sintassi?

Grazie
 
Grazie mille, ora funziona tutto perfettamente, mi chiedo però dov'era il problema nella mia quest, alla fine la cella risultante è sempre la stessa!
 
Ultima modifica:
ho una piccola richiesta. puoi creare una funzione che permette di individuare un player e mettergli un target sopra?

se già esistesse potresti segnalarmi la funziona e la sintassi?

Grazie
Lo usavo su vanilla, ecco a te:
http://pastebin.com/SCtnH4wE


- - - Updated - - -

Grazie mille, ora funziona tutto perfettamente, mi chiedo però dov'era il problema nella mia quest, alla fine la cella risultante è sempre la stessa!
No, col tuo metodo implichi che l'oggetto che assegni va a finire nello stesso spazio di quello che hai tolto. E non sempre è esatto :)
 
Bum!

Se oggi non ho impegni importanti, rilascio (se promettete di non insultarmi :P) i sorgenti della libreria per il 2089M, considerato che non ho intenzione di continuare a svilupparla.

Mentre, la libreria per il 34k riceverà a giorni un update critico (quella attuale ha alcuni problemi, perchè nella foga di adattarla non ho pensato al fatto che le struttura CITEM e CHARACTER sono cambiate, quindi NON utilizzatela al momento).

Salute a tutti.
 
Ci sarà anche una v4 ? v.v
No, le esigenze che avevo di eseguire query in game si sono volatilizate, quindi non ci perderò troppo tempo.

- - - Updated - - -

https://mega.co.nz/#!fNxG0QoZ!XyNaknoqSkIMMalhNlmGADbJn8ggCT2mZo5oNhjqXGY
Questi sono i sorgenti, non fatemene pentire.
 
Bababum!

Rilascerò la nuova versione per il game 34k quando qualcuno di voi capirà qual'è la nuova funzionalità inclusa!

OAnPxDo.png
 
Ok, compilo e pubblico la nuova versione.

Vi anticipo però che l'exp è un signed int 32, quindi il massimo di exp che potete assegnare è 2^32/2-1 (2.147.483.647), oltre quel numero l'exp sarà negativa. Quindi se volete emulare l'ita, vi tocca ingegnarvi con il client e fare una cosa poco pulita :P

- - - Updated - - -

Bene, la v004 è su, controllate il primo messaggio.

Guida all'utilizzo della easy-exp_table
La libreria compilata è impostata per cercare il file exp_table al percorso
Codice:
/root/ClassicWorld/share/locale/germany/exp_table
Tuttavia, per rendervi il tutto configurabile, ho dichiarato la variabile come char[2048], e se vi spostate con un hex-editor all'address 0x39A0 (CTRL+G con qualunque hex editor) potrete cambiarlo con quello che vi pare, tenendo presente che è valido usare percorsi relativi e che c'è differenza tra spazio e 0x00, se il vostro percorso è più breve.

Il file exp_table deve avere la seguente sintassi:
Codice:
LIVELLO_MASSIMO
EXP_LV1
EXP_LV2
EXP_LV3
...
EXP_LVMASSIMO
Qui trovate una exp table fino al livello 105 (http://pastebin.com/isCt1MZR) con l'exp settata fino al 99 come quella dell'italiano, mentre sopra il 99 cresce, ma non potendo superare i 2147483647, è lievemente diverso.

Qualora decidiate di non usare questo metodo, semplicemente non create alcuna exp_table, e il game vi dirà che non è riuscito a trovarla, tuttavia fregatevene, perchè ignorerà il caricamento e utilizzerà la exp_table del vostro locale.

Nota importante: Non è compatibile con i locali YMIR, KOREA, JAPAN e alcuni altri.

https://mega.co.nz/#!mFZlkKZD!cosvmi2vpvjqFXyNaPxUzX9-GLFtN3E28EbQLjNJR2Q

Ricordo che è comunque indispensabile settare il livello massimo dal CONFIG.
 
UP!
Mi fate postare i sorgenti della vecchia lib e sparite?
Sono deluso, pensavo che il progetto vi attirasse di più.
 
UP!
Mi fate postare i sorgenti della vecchia lib e sparite?
Sono deluso, pensavo che il progetto vi attirasse di più.
Penso che ora sono tutti a testare i nuovi file r34k, credo che la rev_2089M non verrà più usata, per questo a nessuno interessa più questo post, o almeno credo.
 
UP!
Mi fate postare i sorgenti della vecchia lib e sparite?
Sono deluso, pensavo che il progetto vi attirasse di più.

Su inforge è cosi (tutto come una moda temporanea) ma tranquillo molti comunque utilizzano questa lib e apprezzano il lavoro che c'è dietro :\
 
Stato
Discussione chiusa ad ulteriori risposte.
Indietro
Top Bottom