Discussione Problema Cavallo

Stato
Discussione chiusa ad ulteriori risposte.

TheDragster

Utente Palladium
12 Aprile 2011
4,348
202
893
1,626
Salve,
Ho un problema con il chiama cavallo.
Inizialmente nel mio server al login si ha il cavallo lv 5(principiante) con l'item chiama cavallo Medio(Che ho cambiato adesso, ma non credo sia quello il problema)..

Visto che sono GF e ho i poteri, ho salito il chiama a lv P con /setsk 131 40 e ho capito di aver sbagliato...
Dopo ho scritto /setsk 131 10 ed è andato tutto bene(10 è il lv massimo se non sbaglio, e io lo avevo messo a p :asd: )
Ho provato a dare /reload , e a spawnare l'item per il cavallo(Il mio cavallo è lv 30, quindi ho spawnato libro militare a cavallo cioè 50053),
Ma quando clicco l'immagine non succede niente... devo per forza chiamarlo con horse_summon e salirci con horse_ride.

Potreste dirmi come fixare/aggiustare questo "Bug" ?
Ho paura che lo riscontreranno anche gli utenti.
 
Naviga tramite FTP su ../quest/object e vedi se c'è la cartella 50053, se esiste, controlla che all'interno ci sia lo script corretto, se non esiste, dovrari creare lo script da capo.
 
La cartella c'è, dentro c'è un'altra cartella di nome "use" e dentro la cartella "use"(Cioè, directory usr/home/game/share/locale/italy/quest/object/use) c'è un file di nome "horse_summon.start".

Dentro questo file(horse_summon.start) c'è scritto questo :
if horse . get_grade ( ) == 0 then say_title ( "Chiama cavallo" ) say ( "Non possiedi il cavallo.[ENTER]" )
return end if horse . get_level ( ) ~= 21 and not PetSystem . IsPetLevel ( horse . get_level ( ) ) then say_title ( "Chiama cavallo" )
say ( "Non e' il chiama cavallo adatto al tuo cavallo.[ENTER]" )
return end if horse . get_level ( ) == 21 or PetSystem . IsPetLevel ( horse . get_level ( ) ) then local err , liv , name
say_title ( "Chiama cavallo" )
if PetSystem . IsActive ( ) then
err , liv , name = PetSystem . LoadHorseData ( )
if err then
say_title ( "Richiamo Pet" )
say ( "Impossibile caricare i dati del cavallo." )
say ( "Se sei un GM, impostati il livello del" )
say ( "cavallo diverso da quello dei pet, e usa" )
say ( "di nuovo il richiamo del pet o il libro" )
say ( "del cavallo.[ENTER]" )
PetSystem . RemoveBonus ( )
PetSystem . SetInactive ( )
cleartimer ( "give_exp" )
horse . unsummon ( )
return
elseif liv ~= 21 then
say ( "Non e' il chiama cavallo adatto al tuo cavallo.[ENTER]" )
return
end
end
if pc . getsp ( ) >= 300 then
if number ( 1 , 100 ) <= horse_summon . get_horse_summon_prob_pct ( ) then
if PetSystem . IsActive ( ) then
PetSystem . RemoveBonus ( )
horse . unsummon ( )
horse . set_level ( liv )
horse . set_name ( name )
PetSystem . SetInactive ( )
cleartimer ( "give_exp" )
else
if PetSystem . IsPetLevel ( horse . get_level ( ) ) then
say ( "Hai fatto casino con i comandi GM." )
say ( "Rimetti il livello del cavallo con" )
say ( "i comandi, e poi riprova.[ENTER]" )
return
end
end
say ( "Hai chiamato il cavallo esperto.[ENTER]" )
horse . summon ( )
else
say ( "Purtroppo il cavallo non arriva." )
say ( "Prova di nuovo.[ENTER]" )
end
pc . change_sp ( - 300 )
else
say ( "Non hai abbastanza MP." )
say ( "Per chiamare il cavallo esperto" )
say ( "hai bisogno di 300 MP.[ENTER]" )
end
return end
 
Aaah ma c'è un casino per via del PetSystem! Non si capisce quasi nulla. Aggiungi in quel file questa roba che c'è scritta sotto.

if horse . get_grade ( ) == 3 then
if pc . getsp ( ) >= 300 then
if number ( 1 , 100 ) <= horse_summon . get_horse_summon_prob_pct ( ) then
horse . summon ( )
say ( "Hai chiamato il cavallo esperto.[ENTER]" )
else
say ( "Purtroppo il cavallo non arriva." )
say ( "Prova di nuovo.[ENTER]" )
end
pc . change_sp ( - 300 )
else
say ( "Non hai abbastanza MP." )
say ( "Per chiamare il cavallo esperto" )
say ( "hai bisogno di 300 MP.[ENTER]" )
end
return end

Poi in game fai /reload q ed ecco che evocherà il cavallo.
 
Aaah ma c'è un casino per via del PetSystem! Non si capisce quasi nulla. Aggiungi in quel file questa roba che c'è scritta sotto.

if horse . get_grade ( ) == 3 then
if pc . getsp ( ) >= 300 then
if number ( 1 , 100 ) <= horse_summon . get_horse_summon_prob_pct ( ) then
horse . summon ( )
say ( "Hai chiamato il cavallo esperto.[ENTER]" )
else
say ( "Purtroppo il cavallo non arriva." )
say ( "Prova di nuovo.[ENTER]" )
end
pc . change_sp ( - 300 )
else
say ( "Non hai abbastanza MP." )
say ( "Per chiamare il cavallo esperto" )
say ( "hai bisogno di 300 MP.[ENTER]" )
end
return end

Poi in game fai /reload q ed ecco che evocherà il cavallo.

Ricreo il file(senza pet system) inserendo quello che mi hai detto tu oppure lo aggiungo e basta?
 
Prova ad aggiungerlo sotto l'altro script che gia possiedi, se non va al limite lo togli. In tutti i casi ti consiglierei di togliere completamente il pet.system e di rimetterlo come si deve, magari creando altre quest al posto di inserirle nell'horse_summon.
 
Ultima modifica:
Entro questa sera provo, adesso non sono a casa :)
Intanto ti ringrazio per l'aiuto dimostrato :D
 
Stato
Discussione chiusa ad ulteriori risposte.
Indietro
Top Bottom