-
Posts
1,288 -
Joined
-
Last visited
Content Type
Profiles
Forums
Calendar
Posts posted by giver
-
-
Questa versione di Scene_Title permette di far partire il gioco direttamente da una mappa del gioco, saltando il menù di scelta GIOCA, CARICA, ESCI.
E' utile a chi vuole creare un gioco che comincia subito senza Title, oppure a chi si trova meglio a realizzare un Title personalizzato ad Eventi, magari preceduto da un'Intro sempre ad Eventi . . .
Va messa AL POSTO della Scene_Title di base dell'XP.
#==============================================================================# - Scene_Title (Dummy Title v 2.2 Lite by giver)#------------------------------------------------------------------------------# Scena che inizializza il gioco e va ad una mappa del gioco senza far scegliere# cosa fare tra Gioca, Carica ed Esci (queste cose andranno inserite in una mappa# se si desidera usarle)#============================================================================== class Scene_Title # Switch che verrà messo ON se ci sono salvataggi presenti SAVES_PRESENT_SWCID = 100 # # Si può scegliere una mappa e posizione di partenza alternativa a quella # impostata nell'editor. Per accedervi, usare un comando-evento (CALL) # SCRIPT, ossia l'ultimo della terza pagina dei comandi-evento, inserendo # il seguente testo: # # $scene = Scene_Title.new(true) # # ATTENZIONE: Usare questa opzione Resetta tutti i dati del gioco, quindi # Variabili, Switch e quant'altro settato nel corso di un'eventuale partita # andrà PERDUTO. Si chiama PARTENZA ALTERNATIVA proprio per questo ! # # ID Mappa di Partenza Alternativa # Cambiare il 4 con l'ID della mappa dove il gioco parte diversamente da # come impostato nell'editor ALTERNATE_START_MAP_ID = 4 # Ricordare che le coordinate di una mappa partono da 0, non da 1 # Coordinata X nella Mappa di Partenza Alternativa ALTERNATE_START_MAP_X = 9 # Coordinata Y nella Mappa di Partenza Alternativa ALTERNATE_START_MAP_Y = 7 # Party di Partenza Alternativa # Inserire tra parentesi quadre gli ID di TUTTI gli actors che dovranno # comporre il party in caso di partenza alternativa, visto che actors già # presenti verranno eliminati. # Si può lasciare il party alternativo vuoto mettendo solo le parentesi # quadre [] dopo l'uguale, per aggiungere successivamente i PG che lo # compongono tramite l'apposito comando-evento ALTERNATE_START_PARTY_ACTORS = [1, 6] # # Indica se iniziare subito il gioco, saltando eventuali Title ed Intro # realizzati ad Eventi def initialize(saltamenùeintro = false) @gioca_subito = saltamenùeintro end #-------------------------------------------------------------------------- # - Processo Principale #-------------------------------------------------------------------------- def main # Se il gioco è stato avviato per provare una battaglia dal DataBase if $BTEST battle_test return end # Caricamento Database $data_actors = load_data("Data/Actors.rxdata") $data_classes = load_data("Data/Classes.rxdata") $data_skills = load_data("Data/Skills.rxdata") $data_items = load_data("Data/Items.rxdata") $data_weapons = load_data("Data/Weapons.rxdata") $data_armors = load_data("Data/Armors.rxdata") $data_enemies = load_data("Data/Enemies.rxdata") $data_troops = load_data("Data/Troops.rxdata") $data_states = load_data("Data/States.rxdata") $data_animations = load_data("Data/Animations.rxdata") $data_tilesets = load_data("Data/Tilesets.rxdata") $data_common_events = load_data("Data/CommonEvents.rxdata") $data_system = load_data("Data/System.rxdata") # Resetta il contatore frame per il tempo di gioco Graphics.frame_count = 0 # Creazione oggetti $game_temp = Game_Temp.new $game_system = Game_System.new $game_switches = Game_Switches.new $game_variables = Game_Variables.new $game_self_switches = Game_SelfSwitches.new $game_screen = Game_Screen.new $game_actors = Game_Actors.new $game_party = Game_Party.new $game_troop = Game_Troop.new $game_map = Game_Map.new $game_player = Game_Player.new # Creazione Gruppo, usando le informazioni nel pannello System del DataBase # Se si usano Title e/o Intro ad Eventi, dovrebbe essere lasciato VUOTO, # ossia vanno eliminati tutti i PG dal sotto-pannello di System nel DB $game_party.setup_starting_members # Controlla se ci sono salvataggi ed in caso positivo mette ON lo switch # indicato nella costante SAVES_PRESENT_SWCID for i in 0..3 if FileTest.exist?("Save#{i+1}.rxdata") $game_switches[SAVES_PRESENT_SWCID] = true end end # Se si salta il menù iniziale, parte direttamente dalla mappa indicata # nell'evento comune quando si sceglie nuovo gioco, ossia quella in cui # il giocatore inizia a poter gestire il party. # Il codice assume che il party, essendo presenti Title e/o Intro ad Eventi, # sia VUOTO, come si usa di solito in questi casi, quindi il party che è # disponibilie all'inizio del gioco effettivo viene inserito da qui if @gioca_subito # Inserisce nel Party i membri presenti all'inizio del gioco vero e proprio # Questa istruzione mette nel party solo il primo personaggio del DataBase. # Per aggiungere altri PG copiare ed incollare l'istruzione sottostante, # sostituendo all'uno tra parentesi il numero che identifica il PG # nel DataBase # E' la stessa operazione che va fatta, ad Eventi, quando il giocatore # sceglie Nuova Partita nel Menù Iniziale su Mappa (o quella dopo la Intro # se questa è stata inserita dopo il Title ad Eventi) unless $game_party.actors == [] for actorerase in $game_party.actors $game_party.remove_actor(actorerase.id) end end unless ALTERNATE_START_PARTY_ACTORS == [] for actorid in ALTERNATE_START_PARTY_ACTORS $game_party.add_actor(actorid) end end # Creazione Mappa dove inizia il gioco vero e proprio # E' la stessa cosa che viene fatta, usando il Trasferimento/Teletrasporto, # quando il giocatore sceglie Nuova Partita (o quella dopo la Intro, se è # stata inserita dopo il Title ad Eventi) $game_map.setup(ALTERNATE_START_MAP_ID) # Trasferimento alle coordinate del punto d'inizio # Cambiare i valori seguendo gli stessi criteri indicati per l'ID della Mappa $game_player.moveto(ALTERNATE_START_MAP_X, ALTERNATE_START_MAP_Y) else # Creazione Mappa con Title ad Eventi, ossia quella impostata nel tool $game_map.setup($data_system.start_map_id) # Trasferimento alle coordinate del Title ad Eventi $game_player.moveto($data_system.start_x, $data_system.start_y) end # Aggiornamento Giocatore $game_player.refresh # Suona BGM e BGS automatici $game_map.autoplay # Aggiornamento Mappa $game_map.update # Cambia Scena $scene = Scene_Map.new end #-------------------------------------------------------------------------- # - Test Battaglia #-------------------------------------------------------------------------- def battle_test # Caricamento Database per il test battaglia $data_actors = load_data("Data/BT_Actors.rxdata") $data_classes = load_data("Data/BT_Classes.rxdata") $data_skills = load_data("Data/BT_Skills.rxdata") $data_items = load_data("Data/BT_Items.rxdata") $data_weapons = load_data("Data/BT_Weapons.rxdata") $data_armors = load_data("Data/BT_Armors.rxdata") $data_enemies = load_data("Data/BT_Enemies.rxdata") $data_troops = load_data("Data/BT_Troops.rxdata") $data_states = load_data("Data/BT_States.rxdata") $data_animations = load_data("Data/BT_Animations.rxdata") $data_tilesets = load_data("Data/BT_Tilesets.rxdata") $data_common_events = load_data("Data/BT_CommonEvents.rxdata") $data_system = load_data("Data/BT_System.rxdata") # Resetta il contatore frame per il tempo di gioco Graphics.frame_count = 0 # Creazione oggetti $game_temp = Game_Temp.new $game_system = Game_System.new $game_switches = Game_Switches.new $game_variables = Game_Variables.new $game_self_switches = Game_SelfSwitches.new $game_screen = Game_Screen.new $game_actors = Game_Actors.new $game_party = Game_Party.new $game_troop = Game_Troop.new $game_map = Game_Map.new $game_player = Game_Player.new # Settaggio Gruppo per il test battaglia $game_party.setup_battle_test_members # Settaggio ID Gruppo di mostri, possibilità di fuga e sfondo $game_temp.battle_troop_id = $data_system.test_troop_id $game_temp.battle_can_escape = true $game_map.battleback_name = $data_system.battleback_name # Suona SE Inizio Battaglia $game_system.se_play($data_system.battle_start_se) # Suona BGM Battaglia $game_system.bgm_play($game_system.battle_bgm) # Vai alla scena della battaglia $scene = Scene_Battle.new endendModifiche rispetto alla versione precedente:
- Sostituzione Scene_Title invece dello script Main
- Riattivato Test Battaglie dal DataBase
- Possibilità di indicare uno switch che verrà messo ON quando ci sono salvataggi per decidere se permettere l'accesso o meno a Scene_Load
- Possibilità di far ripartire il gioco dopo il Title e/o la Intro ad Eventi su mappa, in caso siano stati inseriti nel gioco, ossia, saltandoli, dal punto in cui il giocatore prende il controllo del party per la prima volta. Si usa questa istruzione:
$scene = Scene_Title.new(true)
I più estrosi avranno capito che, con qualche modifica (da scripter), è possibile far ripartire il gioco da qualunque mappa, resettando tutti i valori a quelli di partenza (eccetto, appunto, il/la Livello/Mappa raggiunto/a nel gioco), come avviene in certi arcade quando si rigioca entro un certo periodo dal Game Over . . . - Tentativo di semplificarne la configurazione, avendo portato tutti i valori da impostare all'inizio dello script
- Funzioni dello script documentate meglio, al suo interno.
- Sostituzione Scene_Title invece dello script Main
-
E' leggermente diverso da quello che ti ho postato io, ma la soluzione dovrebbe andare bene anche per questo . . .
-
Chiedo scusa per il doppio post, ma si trattava di un dettaglio importante.
EDIT - Postata una versione migliore alcuni post più sotto . . .
Non necessita dell'add-on che era stato postato qui . . .
-
EDIT - Postata una versione migliore alcuni post più sotto . . .
-
Una banca fatta ad eventi. Non c'è molto da dire oltre al fatto che si possono depositare e/o prelevare solo soldi.
Autore
Me
Demo
A me ricorda tanto questo . . .
Sportello Bancario ad Eventi (Makerando.it)
Ma magari tu sei Alex Rowe di Makerando . . .
-
Se vuoi che tutti i messaggi abbiano il carattere grande uguale, effettivamente non è difficile . . .
Nel metodo def initialize dello script Window_Message, sotto l'istruzione
self.contents = Bitmap.new(width - 32, height - 32)
inserisci, per la grandezza del font
self.contents.fonts.size = NN
dove NN è la grandezza del carattere desiderata.
Di base va da 20 a 24, e se non puoi cambiare l'altezza delle righe di testo della finestra, che è 32, non ti conviene impostarlo a più di 28 . . . E tieni conto che aumentando la grandezza del font, le scritte si allargheranno, quindi ogni riga dovrà contenere meno testo di quello permesso dall'evento Mostra Testo
Per il grassetto, invece devi inserire
self.contents.font.bold = true

*Script HUD HP/MP/EXP/GP
in Scripts RGSS (XP)
Posted · Edited by Apo
applicato tag code
Puoi provare così, ma non sono sicuro che funzioni . . .
Aggiungi, subito dopo class Scene_Map, in questo script o nello Scene_Map standard
poi, per eliminarlo usa, tramite call script
e per farlo riapparire