Jump to content
Rpg²S Forum
  • 0

Sportello amico: Neji


Neji
 Share

Question

Avevo una cosa simile su Rpg Shrine, dove rispondevo a problemi "semplici". Vi spiego in breve cosa sarebbe.

 

Per evitare l'apertura di topic inutili del tipo "a cosa serve il simbolo @" o "cos'e' Window.new" apro il mio sportello amico. =\

Qui rispondero' alle domande che vi sembrano troppo banali o stupide per aprirne un topic. Vi faccio un esempio:

 

"Come posso fare per cambiare il Font delle window solo in alcuni casi?"

 

"Prima di scrivere la 'frase' usa '@window.contents.font.name = 'font'', dove 'font' sta per il nome del font, e poi subito dopo per rimettere a posto usa '@window.contents.font.name = $fontface'"

 

Capito insomma no?

 

Cosi' spero di evitare dei topic inutili e ingombranti. ^^

http://img221.imageshack.us/img221/9656/mtv7sa8abiu4.jpg




http://www.deathnoteitalia.com/interactive/profili/Light.jpg



L'archeologo e studioso di peni Lestat dice:

Spoiler

Il Manifesto del Making Italiano

SALVIAMO IL MAKING ITALIANO!!
Dopo un test dei nostri esperti (Alato, Blake e havana24) abbiamo scoperto che ad interesse risponde interesse: cioè se voi dimostrate di essere interessati a ciò che creano gli altri, questi saranno stimolati a continuare a creare! E' un concetto semplice ma estremamente sottovalutato, basta vedere quanti topic di bei giochi sono caduti nel dimenticatoio e sono stati cagati solo da poche persone (prendiamo per esempio il fantastico gioco di Vech che vi invito a vedere nella sezione RM2k).
Perciò quello che dobbiamo fare è: leggere, leggere, leggere, postare, postare, postare! E questo non significa postare a caso, ma leggere per bene il progetto di qualcuno, le domande poste, le creazioni grafiche e musicali, e fare dei post in cui si propongano miglioramenti, si critichino le brutture, si esaltino le bellezze, si aiutino gli oppressi etc etc
BASTA AL MAKING ITALIANO CHE VA A ROTOLI! DIAMOCI UNA SVEGLIATA!!
Per dimostrarvi ciò che sto esponendo vi riporto che la volta in cui abbiamo provato (Alato, Blake e havana24) a fare una cosa di questo genere, c'è costata un pomeriggio ma il giorno dopo abbiamo ottenuto il numero massimo di utenti online mai raggiunto!!! Ma soprattutto ciò significa che l'interesse riguardo al making era stato, almeno momentaneamente, risvegliato!!
Voi pensate che eravamo solo in 3 a cercare tutti i topic e ravvivarli (con sincerità e senza i soliti falsi "Oh che bello.", ma anche con critiche per lavori incompleti o assurdi) e abbiamo ottenuto quel grande risultato: se lo facessimo tutti non sarebbe una cosa potentissima?!?
BASTA ALLE SOLITE BANALI DISCUSSIONI SULLA DECADENZA DEI GIOCHI!! FACCIAMOLI STI GIOCHI!!!
Chi è contrario a questa cosa, può pure continuare così ma è una persona che col making non ha nulla a che fare, ma chi crede nel making inizi ora, immediatamente a seguire questa linea di pensiero!

Ma chi è d'accordo, chi davvero ci tiene al making, incolli questo Manifesto nella propria firma!! Mettete anche voi questa firma!!

Link to comment
Share on other sites

  • Answers 765
  • Created
  • Last Reply

Top Posters For This Question

Recommended Posts

  • 0

scusa, all'inizio pensavo fosse solo per le finestre, ma alla fine avevo risolto ma non ho potuto rispondere

cmq grazie ugualmente

The Zodiac Brave Story
http://img201.imageshack.us/img201/7397/finalfantasytacticstheloy2.jpg

"A warrior takes sword in hand,
clasping a gem to his heart.
Engraving vanishing memories
into the sword,
He places finaly honed skills
into the stone,
Spoken from the sword
handed down from the stone"...


...Now the story can be told...


Idzule Reborn 01%
<div style="margin:20px;margin-top:5px" "="">





http://img237.imageshack.us/img237/9992/wallerinloveom7.png
Più di 200 scenari realizzati completamente a mano....
Nuovi chara creati da zero!
Menù Personalizzato!
La forza non è tutto! Muoviti mentre combatti!
Viaggia sulla mappa di Idzule è incontra personaggi che hanno fatto la storia di queste terre!
Combatterai con vecchi Boss e avrai il supporto degli spiriti al tuo fianco mentre avrai un quesito che ti perseguiterà per tutto il viaggio: avere la felicità.

PS: Il gioco non uscira prima di due anni!

 

Link to comment
Share on other sites

  • 0

Sportello amico ;_; neddo aiuto ;_;

Voglio controllare se un evento ha come commento (o come parte di commento) la scritta "ciao".

Io con un for controllo tutti gli eventi e a ogni controllo mi faccio printare se c'è (false o true)

 

for i in 1..$game_map.events.size
  print($game_map.events[i].list.include?("ciao")
end

 

allora, nonostante io faccia tutti e 2 gli eventi presenti sulla mappa con il solo commento "ciao" mi printa SEMPRE false... sbaglio qualcosa? mi sento tanto nabbo ;_; aiuto please ;_;

Mammina... perchè mettono papà sotto terra?

 

Ehi, signori, perchè lo mettete sotto terra?

 

No! Non voglio! Se lo fate...

 

...il mio papà non può andare al lavoro!

 

Papà ha detto che deve lavorare tanto!

 

No! Non lo mettete sotto terra!

 

 

 

PAPA'!!

Link to comment
Share on other sites

  • 0
//Risolto da me scusa ^_^ Edited by Lion Ross

 

 

UniRPG Chiude DefinitivamenteDopo che un lamer chiamato wanze ha cancellato qualsiasi traccia di quello che era UniRPG, si è deciso di chiuderla definitivamente.Potete trovare comunque alcuni dei vecchi utenti e forse anche alcuni nuovi a questo indirizzo, che non intende essere una nuova community ma semplicemente un punto di ritrovo.Lion Ross-ex Unirpg mod

 

 

http://img206.imageshack.us/img206/8682/fimrarpg2sjw4.jpg

Fantasy Life - Love tragedy - Storia 80% (pochi ritocchi) - Database 90% (pochissimi item) - Owner system 0% (XD) - GvG system 10% (l'impostazione solo c'è) - R&T system 0% (facile ma lo lascio per ultimo) - Release Intro 80% - Release demo con qualcosa 20%
Link to comment
Share on other sites

  • 0
Sportello amico ;_; neddo aiuto ;_;

Voglio controllare se un evento ha come commento (o come parte di commento) la scritta "ciao".

Io con un for controllo tutti gli eventi e a ogni controllo mi faccio printare se c'è (false o true)

 

for i in 1..$game_map.events.size
  print($game_map.events[i].list.include?("ciao")
end

 

allora, nonostante io faccia tutti e 2 gli eventi presenti sulla mappa con il solo commento "ciao" mi printa SEMPRE false... sbaglio qualcosa? mi sento tanto nabbo ;_; aiuto please ;_;

 

hai dimenticato di chiudere la parentesi, ne apri 2, ne chiudi 1...

Il portale dove tutti possono essere degli artisti e da oggi, puoi fare l'upload di video, musica o immagini e gestire un blog

Il blog adatto a tutti gli amanti dei nokia s60

http://img527.imageshack.us/img527/850/user1agn9.png

Link to comment
Share on other sites

  • 0

ehm, quello è solo un errore di copiatura dallo script asd mi prendi troppo per nabbos ;_;

 

for i in 1..$game_map.events.size
  print($game_map.events[i].list.include?("ciao"))
end

è sbagliato...

for i in 1..$game_map.events.size
  print($game_map.events[i].list[0].parameters == ["ciao"])
end

dovrebbe essere giusto xD

Mammina... perchè mettono papà sotto terra?

 

Ehi, signori, perchè lo mettete sotto terra?

 

No! Non voglio! Se lo fate...

 

...il mio papà non può andare al lavoro!

 

Papà ha detto che deve lavorare tanto!

 

No! Non lo mettete sotto terra!

 

 

 

PAPA'!!

Link to comment
Share on other sites

  • 0

Così come lo hai messo giù potrebbe darti dei problemi.

 

Il metodo list[0] sta a indicare la prima riga del contenuto dell'evento: ovvio tu ci metti sicuramente il commento ma se fa lo stesso controllo su tutti gli eventi è possibile che ti si scombini tutto (se ci metti che so un comando che aumenta gli hp lui cerca di confrontarlo con questo fantomatico "ciao" e probabilmente si impalla).

 

Perciò tieni conto pure dell'attributo *.code del metodo list, che ti torna comodo eventualmente per identificare il primo comando: in parole povere se tu scrivi

print $game_map.events[15].list[0].code

verrà stampato il codice a cui è associato il comando presente nella prima riga dell'evento 15.

 

Il commento ha codice 108. (è uno dei pochi non visibili nelle pagine Interpreter, comunque se cerchi altri codici li trovi lì)

 

Quindi ricapitolando un codice un po' più giusto di quello che hai scritto prima potrebbe essere:

for i in 1..$game_map.events.size
 if $game_map.events[i].list[0].code == 108 # Si chiede se è un commento
print ($game_map.events[i].list[0].parameters[0] == "ciao") # Stampa "true" se contiene "ciao"
 end
end

 

o ancora meglio:

event = $game_map.events
for i in event
if i.list[0].code == 108
  print (i.list[0].parameters[0] == "ciao")
end

(questo listato è identico al precedente, solo scritto in modo un po' più rapido, ripetere ogni volta tutta la pappardella è faticoso XD)

 

Spero di non aver scritto cagate, non tocco il RGSS da un pochetto. ^^"

Link to comment
Share on other sites

  • 0

ok... secondo me è facile la domanda... e sono io quello coglione che nn ci riesce XD quindi scrivo qui ^^

 

Come si inseriscono in uno script i comandi di movimento:

"attendi la fine del muovimento"

- Comando presente negli eventi sotto: "set move route..." chiamato "wait for move completion"

"se non è possibile effettuare il muovimento ignora e vai avanti"?

- Comando presente nella finestra "set move route..." da spuntare "○ ignore if can't move"

 

è possibile modificare l'animazione del character nel seguente modo?

abbinando a ogni fase del movimento un numero: 1 2 3 4, in successione come stanno messi nel charset, normalmente il chara è animato così: 1 2 3 4 3 2 1 2 3 4 3 2 1 giusto?

io volevo animarlo così invece: 1 2 3 4 4 4 4 4 4 4 (ripetendo quattro finchè non levo)

è una cosa che mi serve per un momento e basta... però dovrebbe funzionare a questo modo... mettere in successione 1 2 3 4, quindi bloccarla li senza aggiornarla più... è possibile?

 

 

Membro # 8-8-8 [Hachi] della:

http://img3.imageshack.us/img3/9636/bannergm.png

Link to comment
Share on other sites

  • 0

Per il secondo problema, potresti farlo anche via eventi: crei un chara che sia la "posa 4" del personaggio e la incolli al posto di ogni posa, poi metti 4 condizioni se in un evento comune: "se tasto premuto su/giu/sinistra/destra: attendi fine movimento, cambia chara eroe (da quello normale a quello con le 4 pose uguali)"

Se vuoi farlo tornare normale, ti basterà ricambiare la sprite del chara.

Per il primo problema non ho idea però, non sono scripter xD

http://img396.imageshack.us/img396/5114/bannerqj2.jpg

 

And the Dragon will Rise with the Twilight Star...

...again.

 

Sei nuovo? Leggi qui.

 

http://img505.imageshack.us/img505/210/banneradtnewnt7ew3.jpg

Link to comment
Share on other sites

  • 0
si potrebbe pure fare... solo che mi dava pizza doverci fare l'evento comune... preferivo fosse nello script... mi sapeva una cosa moooolto più ordinata XD poi può darsi che sbagli ^^ cmq... son comandi che fanno sempre comodo : | non solo in questo caso :) quindi se qualcuno sa come fare posti per cortesia ^^

 

 

Membro # 8-8-8 [Hachi] della:

http://img3.imageshack.us/img3/9636/bannergm.png

Link to comment
Share on other sites

  • 0

Scusa, potresti dirmi, se esiste, il comando in RGSS per teletrasportare il PG in un'altra mappa?

 

EDIT: no scusa l'ho trovato

 

Edit2: Ora mi servirebbe un modo per fare una transizione

Edited by Luigi
Link to comment
Share on other sites

  • 0

io ho bisogno di una mano per apportare 2 modifiche allo script di default:

 

1-uso i chara in stile half kaizer,e nella schermata dei salvataggi il pg ha la testa mozzata,quindi volevo sapere come modificare le coordinate in modo che sia visualizzato un pò più in basso

 

2-sempre nella schermata del save,volevo far si che al posto della data dell'ultimo salvataggio (di cui proprio non me ne frega niente) venisse scritto il nome della mappa in cui ci si trova

 

grazie ^^

Bisogno di creare un sito internet?Vai a visitare il White Rabbit ;D

Screen contest #23
http://rpg2s.net/gif/SCContest3Oct.gif


Partecipante al Rpg2s.net Game Contest 2008/2009
http://www.rpg2s.net/contest/GameContest0809/gc0809-bannerino.jpg
Gioco in Sviluppo: Restricted : Project 15

Link to comment
Share on other sites

  • 0
Devi modificare la scene menu e la scene save però non ti so dire la stringa perché sono commesso dal cellulare...

(\__/)

(='.'=)

(")_(")

Questo è Bunny. Ho deciso di aiutarlo nella sua missione di conquista del mondo.

Compagni di Bunny unitevi a me!

 

http://img170.imageshack.us/img170/1858/pizzelartzzennm9.png

I chara da me postati: CLICCA QUI! PER XP - CLICCA QUI! PER XP(2) - CLICCA QUI! PER VX - CLICCA QUI! PER 2K/2K3!

I tileset da me postati:CLICCA QUI! PER XP

I Personaggi Completi da me postati: CLICCA QUI! PER XP

I Face da me postati: CLICCA QUI! PER XP

I Battlers da me postati: CLICCA QUI! PER XP!

Le Windowskin da me postate: CLICCA QUI! PER XP!

Risorse sonore da me postate: CLICCA QUI! PER SCARICARLE!

Guida al Ruby: CLICCA QUI! PER SCARICARLA!

Vi prego di inserirmi nei crediti...Grazie!

Link to comment
Share on other sites

  • 0

1:
Vai in Window_SaveFile e cerca:

self.contents.blt(x, 68 - ch, bitmap, src_rect)

dentro le parentesi il primo valore è la x il secondo è la y.
Fai attenzione che la variabile che determina la x è calcolata sopra quindi nn cancellare la x, al massimo fai tipo x+50.
ch invece è la variabile che contiene l'altezza del personaggio, ma dato che ka y è costante per tutti gli eroi nella y puoi mettere un qualsiasi valore.

2:
Aggiungi questo script:(mettilo dove ti pare anche in uno nuovo basta che stia sopra il main)

 

class Game_Map
def name
$map_infos[@map_id]
end
end
class Scene_Title
$map_infos = load_data("Data/MapInfos.rxdata")
for key in $map_infos.keys
$map_infos[key] = $map_infos[key].name
end
end

 


poi vai sempre in Window_SaveFile e cerca:

self.contents.draw_text(4, 40, 600, 32, time_string, 2)


e sostituiscilo con:

self.contents.draw_text(4, 40, 600, 32, $game_map.name, 2)

Il primo valore è la x, il secondo la y, il terzo la larghezza massima del testo, il quarto l'altezza massima del testo, il quinto il nome della mappa (nn lo toccare), il sesto l'allineamento del testo(1 Centro,2 Destra e niente Sinistra).

Spero sia tutto chiaro ^^

Edited by Apo
Spoiler buggato
Link to comment
Share on other sites

  • 0

grazie 1000,con il primo sono a posto,invece il secondo funziona a metà:il nome della mappa viene visualizzato correttamente nella schermata,ma se esco (chiudendo proprio il gioco) e rientro,quando faccio per caricare la partita mi da questo errore

 

Errore di script 'Window_SaveFile' sulla linea 70 del tipo 'NoMethodError'

undefined method 'name' for nil:NilClass

 

se invece esco al title e carico non succede

Bisogno di creare un sito internet?Vai a visitare il White Rabbit ;D

Screen contest #23
http://rpg2s.net/gif/SCContest3Oct.gif


Partecipante al Rpg2s.net Game Contest 2008/2009
http://www.rpg2s.net/contest/GameContest0809/gc0809-bannerino.jpg
Gioco in Sviluppo: Restricted : Project 15

Link to comment
Share on other sites

  • 0

Scusa colpa mia xD allora...
Senza che ti dico tutte le righe da cambiare ti do la Window modificata direttamente:

 

#==============================================================================
# ** Window_SaveFile
#------------------------------------------------------------------------------
# This window displays save files on the save and load screens.
#==============================================================================

class Window_SaveFile < Window_Base
#--------------------------------------------------------------------------
# * Public Instance Variables
#--------------------------------------------------------------------------
attr_reader :filename # file name
attr_reader :selected # selected
#--------------------------------------------------------------------------
# * Object Initialization
# file_index : save file index (0-3)
# filename : file name
#--------------------------------------------------------------------------
def initialize(file_index, filename)
super(0, 64 + file_index % 4 * 104, 640, 104)
self.contents = Bitmap.new(width - 32, height - 32)
@file_index = file_index
@filename = "Save#{@file_index + 1}.rxdata"
@time_stamp = Time.at(0)
@file_exist = FileTest.exist?(@filename)
if @file_exist
file = File.open(@filename, "r")
@time_stamp = file.mtime
@characters = Marshal.load(file)
@frame_count = Marshal.load(file)
@game_system = Marshal.load(file)
@game_switches = Marshal.load(file)
@game_variables = Marshal.load(file)
Marshal.load(file)
Marshal.load(file)
Marshal.load(file)
Marshal.load(file)
Marshal.load(file)
@game_map = Marshal.load(file)
@total_sec = @frame_count / Graphics.frame_rate
file.close
end
refresh
@selected = false
end
#--------------------------------------------------------------------------
# * Refresh
#--------------------------------------------------------------------------
def refresh
self.contents.clear
# Draw file number
self.contents.font.color = normal_color
name = "File#{@file_index + 1}"
self.contents.draw_text(4, 0, 600, 32, name)
@name_width = contents.text_size(name).width
# If save file exists
if @file_exist
# Draw character
for i in 0...@characters.size
bitmap = RPG::Cache.character(@characters[i][0], @characters[i][1])
cw = bitmap.rect.width / 4
ch = bitmap.rect.height / 4
src_rect = Rect.new(0, 0, cw, ch)
x = 300 - @characters.size * 32 + i * 64 - cw / 2
self.contents.blt(x, 68 - ch, bitmap, src_rect)
end
# Draw play time
hour = @total_sec / 60 / 60
min = @total_sec / 60 % 60
sec = @total_sec % 60
time_string = sprintf("%02d:%02d:%02d", hour, min, sec)
self.contents.font.color = normal_color
self.contents.draw_text(4, 8, 600, 32, time_string, 2)
# Draw timestamp
self.contents.font.color = normal_color
#time_string = @time_stamp.strftime("%Y/%m/%d %H:%M")
#self.contents.draw_text(4, 40, 600, 32, time_string, 2)
self.contents.draw_text(4, 40, 600, 32, @game_map.name, 2)
end
end
#--------------------------------------------------------------------------
# * Set Selected
# selected : new selected (true = selected, false = unselected)
#--------------------------------------------------------------------------
def selected=(selected)
@selected = selected
update_cursor_rect
end
#--------------------------------------------------------------------------
# * Cursor Rectangle Update
#--------------------------------------------------------------------------
def update_cursor_rect
if @selected
self.cursor_rect.set(0, 0, @name_width + 8, 32)
else
self.cursor_rect.empty
end
end
end



Devi andarla a sostituire alla tua Window_SaveFile (puoi anche metterla in un nuovo script sopra il main è uguale).
La porzione di codice che ti avevo dato devi comunque lasciarla(quella che ti avevo messo sotto spoiler).

Cosi dovrebbe funzionarti.

Edited by Apo
Spoiler buggato
Link to comment
Share on other sites

  • 0
adesso è perfetto,grazie 1000 ^^

Bisogno di creare un sito internet?Vai a visitare il White Rabbit ;D

Screen contest #23
http://rpg2s.net/gif/SCContest3Oct.gif


Partecipante al Rpg2s.net Game Contest 2008/2009
http://www.rpg2s.net/contest/GameContest0809/gc0809-bannerino.jpg
Gioco in Sviluppo: Restricted : Project 15

Link to comment
Share on other sites

  • 0

scusate il doppio post,ma ho un altro quesito...

 

devo modificare il font del gioco (premesso che l'avevo già fatto),quando usavo la versione 1.00 di RpgmXP c'era questa riga nella classe Main

 

$fontface = "Arial"

 

mi bastava modificare il nome del font ed ero a posto,ma adesso che ho la versione 1.02 quella riga non c'è più,e non la trovo in tutto lo script editor...

come faccio?

 

P.S.

per essere più precisi,il font dovrebbe essere modificato solo nel title

Bisogno di creare un sito internet?Vai a visitare il White Rabbit ;D

Screen contest #23
http://rpg2s.net/gif/SCContest3Oct.gif


Partecipante al Rpg2s.net Game Contest 2008/2009
http://www.rpg2s.net/contest/GameContest0809/gc0809-bannerino.jpg
Gioco in Sviluppo: Restricted : Project 15

Link to comment
Share on other sites

  • 0
scusate il doppio post,ma ho un altro quesito...

 

devo modificare il font del gioco (premesso che l'avevo già fatto),quando usavo la versione 1.00 di RpgmXP c'era questa riga nella classe Main

 

$fontface = "Arial"

 

mi bastava modificare il nome del font ed ero a posto,ma adesso che ho la versione 1.02 quella riga non c'è più,e non la trovo in tutto lo script editor...

come faccio?

 

P.S.

per essere più precisi,il font dovrebbe essere modificato solo nel title

Usa il main modificato by DaD ;)

Lo trovi nella sezione Script

I mei premi su RPG2s
2o posto nel Xmas contesti 2007

Appena lo ho visto lo ho dovuto mettere in firma ;):
 
<div style="margin:20px;margin-top:5px" "="">

 



Il Manifesto del Making Italiano

SALVIAMO IL MAKING ITALIANO!!
Dopo un test dei nostri esperti (Alato, Blake e havana24) abbiamo scoperto che ad interesse risponde interesse: cio� se voi dimostrate di essere interessati a ci� che creano gli altri, questi saranno stimolati a continuare a creare! E' un concetto semplice ma estremamente sottovalutato, basta vedere quanti topic di bei giochi sono caduti nel dimenticatoio e sono stati cagati solo da poche persone (prendiamo per esempio il fantastico gioco di Vech che vi invito a vedere nella sezione RM2k).
Perci� quello che dobbiamo fare �: leggere, leggere, leggere, postare, postare, postare! E questo non significa postare a caso, ma leggere per bene il progetto di qualcuno, le domande poste, le creazioni grafiche e musicali, e fare dei post in cui si propongano miglioramenti, si critichino le brutture, si esaltino le bellezze, si aiutino gli oppressi etc etc
BASTA AL MAKING ITALIANO CHE VA A ROTOLI! DIAMOCI UNA SVEGLIATA!!
Per dimostrarvi ci� che sto esponendo vi riporto che la volta in cui abbiamo provato (Alato, Blake e havana24) a fare una cosa di questo genere, c'� costata un pomeriggio ma il giorno dopo abbiamo ottenuto il numero massimo di utenti online mai raggiunto!!! Ma soprattutto ci� significa che l'interesse riguardo al making era stato, almeno momentaneamente, risvegliato!!
Voi pensate che eravamo solo in 3 a cercare tutti i topic e ravvivarli (con sincerit� e senza i soliti falsi "Oh che bello.", ma anche con critiche per lavori incompleti o assurdi) e abbiamo ottenuto quel grande risultato: se lo facessimo tutti non sarebbe una cosa potentissima?!?
BASTA ALLE SOLITE BANALI DISCUSSIONI SULLA DECADENZA DEI GIOCHI!! FACCIAMOLI STI GIOCHI!!!
Chi � contrario a questa cosa, pu� pure continuare cos� ma � una persona che col making non ha nulla a che fare, ma chi crede nel making inizi ora, immediatamente a seguire questa linea di pensiero!

Ma chi � d'accordo, chi davvero ci tiene al making, incolli questo Manifesto nella propria firma!! Mettete anche voi questa firma!!

 

Link to comment
Share on other sites

  • 0

Ho un problema con il CCOA...

Ho scaricato la demo e preso gli script che partono dalla pagina CCOA 3.04 RTA fino a MOG_Damage System...

 

Ho copiato tutta la grafica e i nomi di eroi e mostri per farlo funzionare...

 

Lo faccio partire e quando inizia una battaglia attacco con il guerriero e fin qui non ci sono problemi...

Il problema è che quando attacco con uncacciatore o un mago (ovvero le classi in posizione media o indietro) si muovono davvanti all'eroe e attaccano...

 

Mentre nel Ccoa loro rimangono fermi...

 

Come faccio?

Link to comment
Share on other sites

  • 0

supremo signore dello sportello, come posso togliere dal menù(quello base) i soldi, che tanto non ci sono, e levare le barre di EXP e il numero di soldi(con relative icone) da questo HUD?

 

#======================================================================
# ** Game_Actor
# Script by MeisMe
# Graphics added by Peaches
# Icons made by Joshie666 & Axerax
#------------------------------------------------------------------------------
# This class handles the actor. It's used within the Game_Actors class
# ($game_actors) and refers to the Game_Party class ($game_party).
#==============================================================================
class Game_Actor
#--------------------------------------------------------------------------
# * Get the current EXP
#--------------------------------------------------------------------------
def now_exp
return @exp - @exp_list[@level]
end
#--------------------------------------------------------------------------
# * Get the next level's EXP
#--------------------------------------------------------------------------
def next_exp
return @exp_list[@level+1] > 0 ? @exp_list[@level+1] - @exp_list[@level] : 0
end
end

#==============================================================================
# ** Window_HUD
#------------------------------------------------------------------------------
# This class is used to display HP, SP and Gold on the map.
#==============================================================================
class Window_HUD < Window_Base
#--------------------------------------------------------------------------
# * Object Initialization
#--------------------------------------------------------------------------
def initialize
super(-16, -16, 672, 150)
self.contents = Bitmap.new(width-32, height-32)
self.opacity = 0
self.contents.font.size = 14
self.contents.font.name = "Arial"
@actors = []
@old_hp = []
@old_sp = []
@old_exp = []
@old_level = []
for i in 0...$game_party.actors.size
@actors.push($game_party.actors[i])
@old_hp.push(@actors[i].hp)
@old_sp.push(@actors[i].sp)
@old_exp.push(@actors[i].now_exp)
@old_level.push(@actors[i].level)
end
@old_gold = $game_party.gold
refresh
end
#--------------------------------------------------------------------------
# * Refresh
#--------------------------------------------------------------------------
def refresh
self.contents.clear
self.contents.font.color = system_color
#self.contents.draw_text(6, 0, 32, 14, $data_system.words.hp + "")
#self.contents.draw_text(6, 14, 32, 14, $data_system.words.sp + "")
self.contents.draw_text(6, 28, 32, 14, "")
#self.contents.draw_text(6, 42, 32, 14, $data_system.words.gold + "")
self.contents.font.color = normal_color
#Images

case @actors.size
when 1
bitmap = RPG::Cache.picture("HUD Graphic")
self.contents.blt(0, 0, bitmap, Rect.new(0, 10, 500, 500))
when 2
bitmap = RPG::Cache.picture("HUD Graphic2")
self.contents.blt(0, 0, bitmap, Rect.new(0, 10, 500, 500))
when 3
bitmap = RPG::Cache.picture("HUD Graphic2")
self.contents.blt(0, 0, bitmap, Rect.new(0, 10, 500, 500))
when 4
bitmap = RPG::Cache.picture("HUD Graphic3")
self.contents.blt(0, 0, bitmap, Rect.new(0, 10, 640, 500))
when 5
bitmap = RPG::Cache.picture("HUD Graphic3")
self.contents.blt(0, 0, bitmap, Rect.new(0, 10, 640, 500))
end

#bitmap = RPG::Cache.picture("HUD Graphic")
#self.contents.blt(0, 0, bitmap, Rect.new(0, 10, 500, 500))
bitmap = RPG::Cache.icon("HP Symbol")
self.contents.blt(3, 10, bitmap, Rect.new(0, 0, 24, 24))
bitmap = RPG::Cache.icon("SP Symbol")
self.contents.blt(3, 30, bitmap, Rect.new(0, 0, 24, 24))
bitmap = RPG::Cache.icon("EXP Symbol")
self.contents.blt(3, 50, bitmap, Rect.new(0, 0, 24, 24))
bitmap = RPG::Cache.icon("Hero")
self.contents.blt(25, 67, bitmap, Rect.new(0, 0, 24, 24))

if $game_switches[99] == true
if $game_variables[99] == 0
self.contents.draw_text(x, y, 210, 14, $game_party.item_number[1])
elsif $game_variables[8] == 1
self.contents.draw_text(x, y, 210, 14, $game_party.item_number(2))
elsif $game_variables[8] ==2
self.contents.draw_text(x, y, 110, 14, @actors[i].name)
end
end
x = 32
for i in 0...@actors.size
y = 6
self.contents.draw_text(x, y, 110, 14, @actors[i].name)
self.contents.draw_text(x, y, 110, 14, "Lv: #{@actors[i].level}", 2)
y += 16
draw_hp_bar(@actors[i], x, y, 112, 5)
y += 19
draw_sp_bar(@actors[i], x, y, 104, 5)
y += 19
draw_exp_bar(@actors[i], x, y, 88, 5)
y += 19
x += 130
end
x = 32
self.contents.draw_text(45, 73, 110, 14, $game_party.gold.to_s)
end
#--------------------------------------------------------------------------
# * Frame Update
#--------------------------------------------------------------------------
def update
super
if @actors.size != $game_party.actors.size
@actors = []
for i in 0...$game_party.actors.size
@actors.push($game_party.actors[i])
end
refresh
return
end
for i in 0...@actors.size
if @old_hp[i] != @actors[i].hp or
@old_sp[i] != @actors[i].sp or
@old_exp[i] != @actors[i].now_exp or
@old_level[i] != @actors[i].level or
@old_gold != $game_party.gold
refresh
@old_hp[i] = @actors[i].hp
@old_sp[i] = @actors[i].sp
@old_exp[i] = @actors[i].now_exp
@old_level[i] = @actors[i].level
@old_gold = $game_party.gold
end
end
end
#--------------------------------------------------------------------------
# * Draw HP Bar
#--------------------------------------------------------------------------
def draw_hp_bar(actor, x, y, length, thick)
width = length
height = thick
c1 = Color.new(255, 0, 0)
c2 = Color.new(155, 0, 0)
e1 = actor.hp
e2 = actor.maxhp
self.contents.fill_rect(x-1, y - 1, width+2, height + 3, Color.new(255, 255, 255, 255))
self.contents.fill_rect(x, y, width, height + 1, Color.new(0, 0, 0, 255))
w = width * e1 / e2
for i in 0..height
r = c1.red + (c2.red - c1.red) * (height -i)/height + 0 * i/height
g = c1.green + (c2.green - c1.green) * (height -i)/height + 0 * i/height
b = c1.blue + (c2.blue - c1.blue) * (height -i)/height + 0 * i/height
a = c1.alpha + (c2.alpha - c1.alpha)* (height -i)/height + 255 * i/height
self.contents.fill_rect(x, y+i, w, 1, Color.new(r, g, b, a))
end
end
#--------------------------------------------------------------------------
# * Draw SP Bar
#--------------------------------------------------------------------------
def draw_sp_bar(actor, x, y, length, thick)
width = length
height = thick
c1 = Color.new(0, 0, 255)
c2 = Color.new(0, 0, 155)
e1 = actor.sp
e2 = actor.maxsp
self.contents.fill_rect(x-1, y - 1, width+2, height + 3, Color.new(255, 255, 255))
self.contents.fill_rect(x, y, width, height + 1, Color.new(0, 0, 0))
w = width * e1 / e2
for i in 0..height
r = c1.red + (c2.red - c1.red) * (height -i)/height + 0 * i/height
g = c1.green + (c2.green - c1.green) * (height -i)/height + 0 * i/height
b = c1.blue + (c2.blue - c1.blue) * (height -i)/height + 0 * i/height
a = c1.alpha + (c2.alpha - c1.alpha)* (height -i)/height + 255 * i/height
self.contents.fill_rect(x, y+i, w, 1, Color.new(r, g, b, a))
end
end
#--------------------------------------------------------------------------
# * Draw EXP Bar
#--------------------------------------------------------------------------
def draw_exp_bar(actor, x, y, length, thick)
width = length
height = thick
c1 = Color.new(158, 208, 9)
c2 = Color.new(58, 108, 0)
e1 = actor.now_exp
e2 = actor.next_exp
if actor.next_exp == 0
e1 = 1
e2 = 1
end
self.contents.fill_rect(x-1, y - 1, width+2, height + 3, Color.new(255, 255, 255, 255))
self.contents.fill_rect(x, y, width, height + 1, Color.new(0, 0, 0, 255))
w = width * e1 / e2
for i in 0..height
r = c1.red + (c2.red - c1.red) * (height -i)/height + 0 * i/height
g = c1.green + (c2.green - c1.green) * (height -i)/height + 0 * i/height
b = c1.blue + (c2.blue - c1.blue) * (height -i)/height + 0 * i/height
a = c1.alpha + (c2.alpha - c1.alpha)* (height -i)/height + 255 * i/height
self.contents.fill_rect(x, y+i, w, 1, Color.new(r, g, b, a))
end
end
end

#==============================================================================
# ** Scene_Map
#------------------------------------------------------------------------------
# This class performs map screen processing.
#==============================================================================
class Scene_Map
#--------------------------------------------------------------------------
# * Object Aliasing
#--------------------------------------------------------------------------
alias hud_scene_map_main main
alias hud_scene_map_update update
#--------------------------------------------------------------------------
# * Object Initialization
#--------------------------------------------------------------------------
def main
@HUD = Window_HUD.new
hud_scene_map_main
@HUD.dispose
end
#--------------------------------------------------------------------------
# * Frame Update
#--------------------------------------------------------------------------
def update
@HUD.update
hud_scene_map_update
end
end




ringrazio per un'eventuale risposta!

Edited by Apo
Spoiler buggato

http://img13.imageshack.us/img13/1359/userbarlor.png

 

"La Storia Ha Orrore Dei Paradossi"(Raziel)

Partecipante al Rpg2s.net Game Contest 2008/2009

http://www.rpg2s.net/contest/GameContest0809/gc0809-bannerino.jpg

Gioco in Sviluppo: Æterna Nova Lux

 

RMXP.IT, Rest In Peace!

Link to comment
Share on other sites

  • 0

Per rimuovere la finestra dei soldi dal menu commenta o cancella tutte le parti di codice in cui figura @gold_window.

Per rimuovere la barra dell'exp commenta o rimuovi questo codice:

draw_exp_bar(@actors[i], x, y, 88, 5)

Per rimuovere i soldi commenta o rimuovi questo codice:

self.contents.draw_text(45, 73, 110, 14, $game_party.gold.to_s)

Spero sia tutto chiaro ;)

Link to comment
Share on other sites

  • 0

io sto facendo una barra x i soldi:

$oro_max = 999
#================================
# ■ Barra Soldi
#================================
# By: Hurricane
# Date: 10.09.08
#================================
class Bar < Window_Base
def initialize
 super(0,0,640,640)
 self.contents = Bitmap.new(640,640)
  self.windowskin = nil
refresh 
end
 def draw_bar(x, y)
empty = RPG::Cache.picture("empty_bar")
bar = RPG::Cache.picture("full_bar")
self.contents.blt(x, y, empty, Rect.new(0, 0,empty.width, empty.height))
w = bar.height  * $game_party.gold/$oro_max
self.contents.blt(x, y, bar, Rect.new(0, 0, bar.width, w))
 end
def refresh
 self.contents.clear
 draw_bar(10,10)  
end
end

 

cm si fa a caricare dal basso?

la barra si carica dall'alto

e nn riesco a farla partire dal basso, idee???

http://www.webgif.org/gif_animate/animali/insetti/immagini/10.gif

Link to comment
Share on other sites

  • 0

Spero che tu abbia risolto il problema, in caso contrario ho due soluzioni per te, la prima consiste nel mettere l'immagine della barra piena dietro quella della barra vuota e rimpicciolire la barra vuota mano a mano che si aggiungono i soldi.

Esempio:

def draw_bar(x, y)
empty = RPG::Cache.picture("empty_bar")
bar = RPG::Cache.picture("full_bar")
self.contents.blt(x, y , bar, Rect.new(0, 0, bar.width, bar.height))
w = empty.height  * ($oro_max-$game_party.gold)/$oro_max
self.contents.blt(x, y, empty, Rect.new(0, 0,empty.width, w))
end

oppure secondo metodo, fai aumentare la barra come hai fatto te solo che la fai partire dalla cordinata y + altezza_barra - grado_di_riempimento

Esempio:

def draw_bar(x, y)
empty = RPG::Cache.picture("empty_bar")
bar = RPG::Cache.picture("full_bar")	
self.contents.blt(x, y, empty, Rect.new(0, 0,empty.width, empty.height))
w = bar.height * $game_party.gold/$oro_max
self.contents.blt(x, y + bar.height - w, bar, Rect.new(0, 0, bar.width, w))
end

 

Trovo che il primo metodo abbia un effetto migliore, provali tutti e due e vedi quale ti sembra migliore secondo i tuoi gusti ;)

Link to comment
Share on other sites

  • 0

ho preso questo script per gli splash screen da questo sito

 

http://www.rpgrevolution.com/forums/?showtopic=1304

 

ho fatto tutto e devo dire che funziona,ma avrei bisogno di una mano:

 

1-innanzitutto volevo fare in modo che la transizione tra un'immagine e l'altra duri di più,così com'è adesso è troppo poca

2-poi vorrei che nella transizione tra un'immagine e l'altra lo schermo non diventi nero,che quindi passi direttamente all'immagine successiva

 

qualche super-scripter potrebbe aiutarmi?

grazie ^^

Bisogno di creare un sito internet?Vai a visitare il White Rabbit ;D

Screen contest #23
http://rpg2s.net/gif/SCContest3Oct.gif


Partecipante al Rpg2s.net Game Contest 2008/2009
http://www.rpg2s.net/contest/GameContest0809/gc0809-bannerino.jpg
Gioco in Sviluppo: Restricted : Project 15

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share


×
×
  • Create New...