Vai al contenuto

Rilevato Ad-Blocker. Per favore disabilita il tuo adblocker quando navighi su makerando.com - Non c'è nessun annuncio invasivo.

  • Chatbox

    You don't have permission to chat.
    Load More

Recommended Posts

Girovagando per il web hon trovato una cosa abbastanza utile (almeno spero XD)

 

Come sappiamo, uno dei difetti di questo tool è la forte limitazione in quanto a switch e variabili (intorno ai 5000, che sembrano tanti ma non lo sono se il gioco è pensato per avere una certa durata). Fortunatamente la funzione Self Switches dimezza di molto il consumo di switch, in quanto i forzieri (elemento ricorrente in molti rpg) hanno ognuno il loro switch locale, non consumano uno switch dall'elenco.

 

Sebbene non si possa negare la loro utilità, i Self Switch hanno l'unico difetto che chiaramente valgono solo per l'evento con cui si interagisce, per tanto il problema "consumo" permane con quelle "features" come le leve o i pulsanti che aprono una porta situata altrove, oppure che so... se un NPC cambia le cose che ha da dire nel corso del tempo.

 

Questo script riduce ulteriormente il carico di Switch che il vostro progetto deve sopportare, permettendoci di controllare "a distanza" i Self Switch di un quasliasi evento.

 

Lo Script è sotto spoiler:

 

 

 

#==============================================================================
#   Simple Self Switches
#   Author: Nicke
#   Created: 16/06/2011
#   Edited: 03/01/2012
#   Version: 1.0a
#==============================================================================
# Instructions
# -----------------------------------------------------------------------------
# To install this script, open up your script editor and copy/paste this script
# to an open slot below ▼ Materials but above ▼ Main. Remember to save.
#
# Use the call script to use this script.
#
# setSelfSwitch (map, id, A-D, true/false)
# isSelfSwitch?(map, id, A-D, true)
# setAllSelf(map, id, true/false)
#
# Note: You can use @map_id if you change the self switches on the same map.
#
# Example 1: setSelfSwitch(@map_id, 1, "A", true)
# This will change the Self Switch "A" of event ID 1 to true on current map.
# Example 2: setSelfSwitch(2, 1, "A", false)
# This will change the Self Switch "A" of event ID 1 to false on map id 2.
#
# You can also check if Self Switch is true/false.
# Example: isSelfSwitch?(2, 1, "A") # Is event_id 1 true on map id 2?
# Example: !isSelfSwitch?(@map_id, 1, "A") # Is event_id 1 false on current map?
# Put this in a Conditional Branch.
#
# Last but not least you can turn all Self Switches to true/false.
# Example 1: setAllSelf(2, 1, true) Set all of event id 1 true on map id 2.
# Example 2: setAllSelf(@map_id, 1, true) Set all of event id 1 to true on current map.
#
# *** Only for RPG Maker VX Ace. ***
#==============================================================================
($imported ||= {})["NICKE-EVENT-SELFSWITCHES"] = true
# *** Don't edit below unless you know what you are doing. ***
#==============================================================================#
# ** Game_Interpreter
#==============================================================================#
class Game_Interpreter

  # // Set SelfSwitch to true/false.
  def setSelfSwitch(map, eID, selfSwitch, trueFalse)
	switch = [map, eID, selfSwitch]
	$game_self_switches[switch] = trueFalse
  end

  # // Is SelfSwitch true/false?
  def isSelfSwitch?(map, eID, selfSwitch)
	switch = [map, eID, selfSwitch]
	$game_self_switches[switch]
  end

  # // Set all SelfSwitches to true/false.
  def setAllSelf(map, eID, trueFalse)
	switches = ["A","B","C","D"]
	for i in switches
	  setSelfSwitch(map, eID, i, trueFalse)
	end
  end

end # END OF FILE

#=*==========================================================================*=#
# ** END OF FILE
#=*==========================================================================*=#

 

 

 

Come funziona:

 

Copiate il codice e incollatelo in un nuovo evento sotto Materials e prima di Main.

Lo script è plug & play, cioè non sono necessarie modifiche aggiuntive.

 

Per utilizzarlo, inserite uno dei seguenti Call-Script (a seconda di cosa vi serve) all'interno di un evento.

setSelfSwitch (map, id, A-D, true/false)

dove map è l' ID della mappa su cui volete operare;

id è l'ID dell'evento;

una lettera MAIUSCOLA da A a D equivale al rispettivo SelfSwitch;

true se volete attivarlo, false se volete disattivarlo.

 

ad esempio scrivendo setSelfSwitch (12, 1, A, true) quello che otterrete è che il SelfSwitch A dell'evento n°1 della mappa 12 sarà attivo; nota che potete inserire @map_id invece dell' ID della mappa per operare sull'evento della mappa attuale.

 

Secondo Comando:

isSelfSwitch?(map, id, A-D, true)

il seguente call script va inserito in un "Conditional Branch" (condizione SE) e serve per verificare se un certo SS è attivo o disattivo (i parametri sono gli stessi).

 

e infine, Terzo Comando:

setAllSelf(map, id, true/false)

anche quu i parametri sono gli stessi (meno la lettera che non c'è): questo comando attiva o disattiva tutti i SS di una data mappa o di quella attuale.

 

Crediti:

Script creato da Nicke, niente è stato modificato, non sono state specificate condizioni per l'utilizzo per tanto fino a comunicazione contraria è Free to Use.

 

Enjoy :D

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Good Ghostino ^^

 

Addirittura avevo visto girovagare nel web, uno script chiamato "Switch Local 2" che potevi utilizzare la Switch locale dalla lettera A fino alla Z ;D

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Mah non capisco, non per screditare il lavoro dell'autore ,ma proprio non ne vedo l'utilità visto che il tool possiede già questa funzione, infatti inserendo

 

$game_self_switches[[idmappa, idevento, 'self_switch']] = valore

 

Dove

 

Idmappa indica l'id della mappa in cui si trova l'evento scelto, usare @map_id per impostare la mappa in cui ci si trova

 

Idevento indica l'evento in questione, @event_id per impostare l'evento che sta richiamando il call script

 

self_switch indica appunto la self switch da usare

 

E infine valore é true o false

 

Praticamente ha fatto la stessa cosa, non aggiunge altre funzionalità mi pare di capire

 

EDIT: Bugia, aggiunge solo la terza funzionalità che hai descritto, spegne tutti i self switch, solo che credo sia piuttosto sconveniente in molti casi XD

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Crea un account o accedi per lasciare un commento

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

Crea un account

Iscriviti per un nuovo account nella nostra comunità. È facile!

Registra un nuovo account

Accedi

Sei già registrato? Accedi qui.

Accedi Ora

  • Contenuti simili

    • Da kaine
      Questa patch modifica il modo in cui le tavolozze delle immagini vengono caricate e calcolate e scambia la modalità di visualizzazione all'interno della finestra di gioco e a schermo intero da 16 a 32 bit. Tutti i file grafici devono ancora avere colori indicizzati a 8bit! Ma con questa patch verranno visualizzati come previsto senza ulteriori perdite di qualità.


      Se si utilizza RPG2000 1.07, è sufficiente attivare la funzione schermo 32bit dello strumento DestinyPatcherV2 e successivamente applicare la patch 32bit-Fix di DestinyV2.
       
      Tool e versioni supportate:
      Rpgmaker 2000: v1.61-v1.62
      Rpgmaker 2003: v1.08
       
      Autore: Bugmenot,KotatsuAkira
       
      Link Download:
      (2003 v1.08)
      https://www.mediafire.com/file/x5lm6ukulc0v6q9/32bit%28fix%29.rar/file
      (2000 v1.61-v1.62)
      https://www.mediafire.com/file/r3u2uark1gub7e3/RPGMakerPatch_Screen32.7z/file
       
       
      Se avete l'ultima versione di dynrpg mettete la patch direttamente nella cartella dynpatches. Altrimenti dovete applicarla tramite lunar ips che trovate qui:
      http://www.mediafire.com/?5jf9r44itbm7674
      
    • Da kaine
      Questa patch cambia la larghezza di tutto il testo renderizzato sullo schermo di gioco da 6 a 8 (i caratteri larghi e EXFONT passano da 12 a 16, il mezzo spazio da 3 a 4) pixel, mentre l'altezza rimane 12. Per utilizzarlo correttamente, potrebbe essere necessario sostituire i font utilizzati dal motore e inserire nell'EXE una nuova immagine EXFONT con una larghezza di 208 anziché 156 pixel.

      Per il momento, non utilizzare questa funzione in combinazione con EXtraFONT. In particolare, applicatela solo se sapete perfettamente cosa state facendo, poiché dovrete regolare manualmente la definizione della larghezza ridimensionata automaticamente di EXFONT al momento del caricamento da 288 a 384 pixel.
       
      Tool e versioni supportate:
      Rpgmaker 2000: v1.07-v1.10-v1.50-v1.51-v1.52-v1.60-v1.61-v1.62
      Rpgmaker 2003: v1.00-v1.03-v1.05-v1.08-v1.09-v1.12
       
      Autore: KotatsuAkira
       
      Link Download:
      https://www.mediafire.com/file/tl9kkcf78b7twqw/RPGMakerPatch_TextWidthEight.7z/file
       
      Se avete l'ultima versione di dynrpg mettete la patch direttamente nella cartella dynpatches. Altrimenti dovete applicarla tramite lunar ips che trovate qui:
      http://www.mediafire.com/?5jf9r44itbm7674
    • Da kaine
      Visualizza il menu invertito come in FF6.
      Personaggi a sinistra ed opzioni a destra.
       
      Tool e versioni supportate:
      Rpgmaker 2000: v1.07-v1.10-v1.50-v1.51-v1.52-v1.60-v1.61-v1.62
      Rpgmaker 2003: v1.00-v1.03-v1.05-v1.08-v1.09-v1.12
       
      Autore: Cherry,KotatsuAkira(porting)
       
      Link Download:
      (2003 v1.08)
      http://www.mediafire.com/file/o6o847gr08adqcb/RPG_RT_menureversed.rar
      (2000 v1.62)
      https://www.mediafire.com/file/osqjc0i4mi72ll4/RPGMakerPatch_MenuReversed.7z/file
      (2000 v1.07-v1.10-v1.50-v1.51/v1.52-v1.60-v1.61-v1.62 - 2003 v1.00-v1.03-v1.05-v1.08-v1.09->v1.12 (Maniac Patch up to mp210414 only) )
      https://www.mediafire.com/file/bfk056czh2xvczj/RPGMakerPatch_MenuReversed.7z/file
       
       
      Se avete l'ultima versione di dynrpg mettete la patch direttamente nella cartella dynpatches. Altrimenti dovete applicarla tramite lunar ips che trovate qui:
      http://www.mediafire.com/?5jf9r44itbm7674
×