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
      Questo plugin permette di accedere ai dati che normalmente non sono accessibili all'utente finale.
      Nonostante tutto il plugin non può ritenersi concluso, dato che è un progetto in continua espansione, trovate informazioni dettagliate sulla questione nel readme.html
      Al momento tramite questo plugin è possibile accedere alle statistiche dei mostri presenti in battaglia.
      Alcune possono essere alterate(Hp/Mp) altre invece no(attacco, difesa,intelligenza,agilità)
      Trovate la lista dei comandi con le relative spiegazioni sul loro funzionamento all'interno del file readme.html
       
      Autore: AubreyTheBard
      Link Download: https://www.mediafire.com/file/odagfm1mfpfrq0r/DynDataAccess.7z/file
       
      nota: Chiunque fosse interessato ad espandere le funzionalità del plugin, all'interno del readme.html troverà la sezione How to contribute, dove viene spiegato come aggiungere nuove funzionalità.
       
       
    • Da kaine
      Questa patch rimuove il comando end, altrimenti aggiunto automaticamente, dal motore di gioco nella scelta principale del menu
      Se si definisce che la scelta nel database è vuota, può
      bloccare il gioco o causare altri problemi.
       
      Tool e versioni supportate:
      Rpgmaker 2003: v1.00-v1.03-v1.05-v1.08-v1.09-v1.12
      Autore: Cherry, KotatsuAkira(porting)
       
      Link  Download:
      (2003 v1.09-v1.12)
      https://www.mediafire.com/file/vwbjb8naswekm58/RPG_RT_112_NoEndCommandInMenu.ips/file
      (2003 v1.00-v1.03-v1.05-v1.08)
      https://www.mediafire.com/file/v4ql077l5icn9dy/RPGMakerPatch_NoEndCommand.7z/file
       
       
      Per applicarla dovete usare questo programmino qui:
      http://www.mediafire.com/download/5jf9r44itbm7674/lips102.zip
      Nel caso in cui invece avete patchato il vostro gioco con la versione 0.20 di dynrpg mettete la patch direttamente nella cartella dynpatches.
       
    • Da kaine
      Tramite questa patch è possibile modificare la posizione del timer sia durante il gioco che in battaglia, alcuni esempi di utilizzo sono il cambiare angolo o far si che in determinate circostanze lo si possa shakerare, posizionare sopra un nemico o far si che segua costantemente l'eroe, un veicolo ecc ecc sta tutto alla vostra immaginazione.
       
      La patch utilizza le seguenti variabili:
      Timer 1
      3401 - 3402 contengono i valori delle coordinate X e Y del timer in game
      3403 - 3404 contengono i valori delle coordinate X e Y del timer in battaglia
      Solo 2003 :
      Timer 2
      3405 - 3406 contengono i valori delle coordinate X e Y del timer in game
      3407 - 3408 contengono i valori delle coordinate X e Y del timer in battaglia
       
      Tool e versioni supportate:
      Rpgmaker 2000: v1.07-v1.10-v1.50-v1.51-v1.62
      Rpgmaker 2003: v1.08-v1.09-v1.12-Maniacs Patch mp210414_EN_IM-mp210414_EN_PF-mp210414_JP_IM-mp210414_JP_PF
       
      Autore: KotatsuAkira
      Link Download:
      https://www.mediafire.com/file/wv677ddsjv9dpv4/RPGMakerPatch_VarTimerPos.7z/file
       
      Nel caso in cui utilizziate la patch Screen32 all'interno dell'archivio è presente una versione compatibile con essa che andrà applicata solamente dopo aver applicato la prima.
       
      Per applicarla dovete usare questo programmino qui:
      https://www.mediafire.com/file/5jf9r44itbm7674/lips102.zip/file
×