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
Ally

Maker tool MCDU_System

Recommended Posts

Nome Script: MCDU_System

Versione: 1.0

Autore/i: Mexod

 

Informazioni:

Questo script permette di scomporre in unità-decine-centinaia-migliaia-dec.migliaia un numero e salvare ogni cifra in una variabile di gioco.

 

Istruzioni:

Istruzioni per l'uso e la customizzazione all'interno dello script.

 

Script:

#===============================================================================
#  MCDU_System  V 1.1                                                 20/02/2010
#===============================================================================
#  by Mexod
#===============================================================================
#  Come usare lo script:
#  Assegnare alla variabile di gioco n°6 il valore del numero da scomporre.
#  Richiamare lo script inserendo in un call script il seguente codice:
#
#        var = $game_variables[6]
#        MCDU_System.new(var)
#
#  Una volta avviato lo script le variabili assumeranno i seguenti valori:
#  V[0001] = unità
#  V[0002] = decine
#  V[0003] = centinaia
#  V[0004] = migliaia
#  V[0005] = decine di migliaia
#  V[0006] = numero intero
#
#  E' consigliato non utilizzare queste variabili per altre operazioni.
#  Terminati i calcoli lo script si disattiva da solo, per scomporre un
#  altro numero richiamare nuovamente lo script come indicato sopra.
#  Lo script funziona solo con i numeri minori di 100000.
#===============================================================================
#  Per cambiare le variabili con cui lo script lavora modificare gli id
#  a partire dalla riga 100
#  Inserire l'id senza gli zeri che precedono la cifra.
#  es:
#  V[0054]  --->   $game_variables[54]
#
#  Se si modifica l'id della variabile associata a @[member=varifortEa]
#  (di default $game_variables[6]) modificare il call script in questo modo:
#  
#        var = $game_variables[nuovo_id]
#        MCDU_System.new(var)  
#
#===============================================================================
class MCDU_System

  def initialize(var)
    @[member=varifortEa] = var
    mcdu_sys
  end

  def mcdu_sys
    if @[member=varifortEa] < 10
      alg_u
    else
      if @[member=varifortEa] > 10 && @[member=varifortEa] < 100
        alg_d
      else
        if @[member=varifortEa] > 100 && @[member=varifortEa] < 1000
          alg_c
        else
          if @[member=varifortEa] > 1000 && @[member=varifortEa] < 10000
            alg_m
          else
            if @[member=varifortEa] > 10000 && @[member=varifortEa] < 100000
              alg_dm
              else
            chiudi
          end
        end
      end
    end
  end
end

  def alg_u
    @[member=varifortEa]_u = @[member=varifortEa]
    chiudi
    end
  def alg_d
    @[member=varifortEa]_u = @[member=varifortEa] % 10
    @[member=varifortEa]_d = ((@[member=varifortEa] - @[member=varifortEa]_u)  / 10) % 10
    chiudi
    end
  def alg_c
    @[member=varifortEa]_u = @[member=varifortEa] % 10
    @[member=varifortEa]_d = ((@[member=varifortEa] - @[member=varifortEa]_u)  / 10) % 10
    @[member=varifortEa]_c = ((@[member=varifortEa] - @[member=varifortEa]_d)  / 100) % 10
    chiudi
    end
  def alg_m
    @[member=varifortEa]_u = @[member=varifortEa] % 10
    @[member=varifortEa]_d = ((@[member=varifortEa] - @[member=varifortEa]_u)  / 10) % 10
    @[member=varifortEa]_c = ((@[member=varifortEa] - @[member=varifortEa]_d)  / 100) % 10
    @[member=varifortEa]_m = ((@[member=varifortEa] - @[member=varifortEa]_c)  / 1000) % 10
    chiudi
  end
  def alg_dm
    @[member=varifortEa]_u = @[member=varifortEa] % 10
    @[member=varifortEa]_d = ((@[member=varifortEa] - @[member=varifortEa]_u)  / 10) % 10
    @[member=varifortEa]_c = ((@[member=varifortEa] - @[member=varifortEa]_d)  / 100) % 10
    @[member=varifortEa]_m = ((@[member=varifortEa] - @[member=varifortEa]_c)  / 1000) % 10
    @[member=varifortEa]_dm = ((@[member=varifortEa] - @[member=varifortEa]_m)  / 10000) % 10
    chiudi
  end
  def chiudi
    $game_variables[1] = @[member=varifortEa]_u   # unità
    $game_variables[2] = @[member=varifortEa]_d   # decine
    $game_variables[3] = @[member=varifortEa]_c   # centinaia
    $game_variables[4] = @[member=varifortEa]_m   # migliaia
    $game_variables[5] = @[member=varifortEa]_dm  # decine di migliaia
    $game_variables[6] = @[member=varifortEa]     # numero intero
  end
end
Incompatibilità:

Nessun bug/conflitto noto.

 

Note dell'Autore:

Non so quanto realmente possa servire uno script del genere, ma se lo usate creditatemi ^^

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 Ally
      Nome Script: FIX Pictures su mappa
      Versione: 1.0
      Autore/i: Ally

      Informazioni:
      Vedendo uno script per VX, ne ho fatta una versione per VX Ace, sperando possa essere utile a qualcuno.

      Quest'ultimo, come da titolo, da la possibilità di fissare le picture su mappa, dandovi la possibilità quindi di utilizzare picture che staranno ancorate sulla mappa anche se il PG si muove.

      La cosa si può fare benissimo anche ad eventi, ma l'utilizzo di questo è semplicissimo e in questo modo non starete a settarvi varibili etc...

      Istruzioni:
      Inserite lo script sotto Material.

      Le istruzioni sono all'interno dello script.

      Script:
      #======================================================= # ▼FIX Picture su Mappa▼ # Autore: Ally # Data: 08/01/2012 # Versione: 1.0 # Esclusiva per http://www.rpgmkr.net # Vietato postare lo script senza il permesso dell'Autore # # ▼Info e Istruzioni▼ # Con questo script si ha la possibilità di fissare # le picture alla mappa aggiungendo semplicemente la # parola FIX prima del nome della picture. # # ▼Conflitti Noti: N/D▼ #======================================================= #============================================================================== # ** Sprite_Picture #------------------------------------------------------------------------------ #  This sprite is used to display pictures. It observes an instance of the # Game_Picture class and automatically changes sprite states. #============================================================================== class Sprite_Picture < Sprite def update_position if @picture.name.include?("FIX") self.x = -$game_map.display_x*32 self.y = -$game_map.display_y*32 else self.x = @picture.x self.y = @picture.y end self.z = @picture.number end end # Fine Script # Incompatibilità:
      N/D

      Note dell'Autore:
      Per uso a scopo commerciale, contattate l'Autore per MP.
      E' vietato distribuire lo script senza il permesso dell'Autore.
    • Da Ally
      Nome Script: Visible Debug
      Versione: 1.2c
      Autore/i: mikb89
       
      Informazioni:
      Capita che qualcosa vada storto fra switch e variabili. Non sai cosa succede, sai solo che non funziona come previsto. Qui entra in gioco questo script!
       
      Features:
      Con questo script puoi tenere sotto controllo una lista di parametri vari i cui cambiamenti saranno mostrati in tempo reale. Questa lista include:
      switch e variabili, switch locali degli eventi; grafica di eventi, giocatore, eroi, nemici; posizione e stato 'Come fantasma' di eventi e giocatore; id dei tile dove si trova il giocatore; numero di oggetti, armi, armature possedute; hp, mp, tp (se abilitato), atk, def, luk, agi, due stati dei combattenti; nomi & livello degli eroi (i nemici non li hanno); altre informazioni utili aggiunte dalle configurazioni (puoi vedere come sono fatte e aggiungerne di tue). Screenshots:
       
      Istruzioni:
      Inserite lo script sotto Materials. Le istruzioni sono fra i commenti.
       
      Script
       
      Demo:
      Demo multilingua v. 1.2c (1.33 MB)
      http://www.mediafire.com/?o5dqoberdpn9opa
       
      Incompatibilità:
      I salvataggi vengono modificati per contenere la lista di dati scelta. È possibile comunque caricare salvataggi precedenti, mentre per continuare ad usare quelli effettuati in presenza dello script, nel caso quest'ultimo venisse rimosso, è presente nella demo un piccolo codicino - per nulla invadente - da lasciare.
       
      Note dell'autore:
      Grazie a @Silver Element per avermi ispirato l'idea (:
      Grazie a @Melosx per avermi supportato con un fastidioso bug ^^
    • Da Ally
      Nome Script: Link Event
      Versione: 1.60
      Autore/i: kingartur2(kingartur3)

      Informazioni:
      Nello script ce ne sono a suffienza.
      PS : se ci sono suggerimenti sono bel accolti.

      Istruzioni:
      Le trovate sempre nello script

      Script:


      #===============================================================================# Autore : kingartur2(kingartur3)# Versione : 1.60#===============================================================================# Istruzioni :# Apporre in un evento il seguente commento :## Link Event x## dove x rappresenta l'id dell'evento da collegare# in questo modo le switch locali dell'evento con id x non saranno più# considerate e le sue switch locali saranno on se tutti gli eventi ad esso# collegati avranno quella switch locale ad on.# Esempio :# Colleghi l'evento con id 1, 2, e 3 all'evento 4.# Se tramite il comando evento cambi la switch locale A dell'evento 4 non# succede nulla, se invece nell'evento 1,2 e 3 la switch locale A risulterà# a ON allora anche nell'evento 4 sarà così, però se nell'evento 1 e 2 la switch# locale A sarà ON e nell'evento 3 sarà OFF allora sarà OFF anche nell'evento 4## Link Event [id mappa, x]# Funziona allo stesso modo del comando precedente con la differenza che in# questo caso l'evento linkato si troverà in un altra mappa#===============================================================================class Game_Map attr_accessor :link_event alias djasijdiasj initialize def initialize djasijdiasj @link_event = [] endendclass Game_Event alias fshfusdhfusdih setup_page def setup_page(new_page) fshfusdhfusdih(new_page) if [email protected]? for i in @page.list if [108, 408].include?(i.code) if i.parameters[0].downcase.include?("link event") a = i.parameters[0].clone.downcase.gsub!("link event") {""} write_link_event(a.to_i) end if i.parameters[0].downcase.include?("link event [") or i.parameters[0].downcase.include?("link event[") a = i.parameters[0].clone.downcase.gsub!("link event") {""} eval("@b = " + a) write_overlink_event(@ end end end end end def write_link_event(id) if $game_map.link_event[$game_map.map_id].nil? $game_map.link_event[$game_map.map_id] = [] end if $game_map.link_event[$game_map.map_id][id].nil? $game_map.link_event[$game_map.map_id][id] = [] end $game_map.link_event[$game_map.map_id][id].push(self.id) end def write_overlink_event(val) if $game_map.link_event[val[0]].nil? $game_map.link_event[val[0]] = [] end if $game_map.link_event[val[0]][val[1]].nil? $game_map.link_event[val[0]][val[1]] = [] end $game_map.link_event[val[0]][val[1]].push([$game_map.map_id, self.id]) end endclass Game_SelfSwitches alias jfdsijfd [] def [](key) if !$game_map.link_event[key[0]].nil? if !$game_map.link_event[key[0]][key[1]].nil? state = true for i in $game_map.link_event[key[0]][key[1]] if i.is_a?(Array) if !$game_self_switches[[i[0], i[1], key[2]]] state = false end elsif !$game_self_switches[[key[0], i, key[2]]] state = false end end return state end end jfdsijfd(key) endend Demo:
      Coming Soon(Se richiesta, vista la semplicità dello script))

      Incompatibilità:
      N/A
    • Da Ally
      Nome Script: Switch Menu
      Versione: N/D
      Autore/i: Zerbu

      Informazioni:
      Come da titolo, con questo script si possono richiamare ad esempio degli eventi comuni al posto del menù etc...

      Screenshots:



      Istruzioni:
      Inserite lo script sotto Material.
      Istruzioni del suo funzionamento come da screen

      Script:


      #============================================================================== # › Switch Menu ‹ #------------------------------------------------------------------------------ # Using this script you can make it so that when the menu is called, a # switch is turned on instead. You can still open the menu by using a # [Open Menu Screen] event call. You can use the switch to create a common # event in place of the menu, or anthing else you want. #------------------------------------------------------------------------------ # by Zerbu #============================================================================== $imported = {} if $imported.nil? $imported["SwitchMenu"] = true #-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= module SwitchMenu   #============================================================================   # ♦ Switch ID ♦   #----------------------------------------------------------------------------   # Set the switch you want turned on~   #============================================================================   SWITCH_ID = 1   #--- end #-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= #============================================================================== # » Scene_Map #============================================================================== class Scene_Map   #----------------------------------------------------------------------------   # » overwrite method: call_menu   #----------------------------------------------------------------------------   def call_menu         $game_switches[SwitchMenu] = true         @menu_calling = false   end   #--- end
    • Da Ally
      Nome Script: MSX - XP Characters on VX/VXAce
      Versione: 1.0
      Autore/i: Melosx
       
      Informazioni:
      Lo script permette di usare i chara xp nel vx semplicemente inserendo il tag $xp.
      Compatibile con VX e VXAce.
       
      Istruzioni:
      All'interno dello script.
       
      Script:
       

      #============================================================================== # ** MSX - XP Characters on VX/VXAce #============================================================================== # Autore: Melosx # Versione: 1.0 # Compatibile con VX e VXAce # #============================================================================== # * Descrizione # ----------------------------------------------------------------------------- # Lo script permette di usare i chara xp nel vx semplicemente inserendo il tag # $xp # prima del nome del file. # Potete quindi usare i normali VX/VXAce insieme a quelli dell'XP. # #============================================================================== # * Istruzioni # ----------------------------------------------------------------------------- # Inserire lo script sotto Materials e sopra Main. Aggiungere ai chara dell'XP # il tag $xp prima del nome. # #============================================================================== #============================================================================== # ** Sprite_Character #============================================================================== class Sprite_Character < Sprite_Base def update_bitmap if @tile_id != @character.tile_id or @character_name != @character.character_name or @character_index != @character.character_index @tile_id = @character.tile_id @character_name = @character.character_name @character_index = @character.character_index if @tile_id > 0 sx = (@tile_id / 128 % 2 * 8 + @tile_id % 8) * 32; sy = @tile_id % 256 / 8 % 16 * 32; self.bitmap = tileset_bitmap(@tile_id) self.src_rect.set(sx, sy, 32, 32) self.ox = 16 self.oy = 32 else self.bitmap = Cache.character(@character_name) sign = @character_name[/^[!$]./] if sign != nil and sign.include?('$') @cw = bitmap.width / 3 @ch = bitmap.height / 4 else @cw = bitmap.width / 12 @ch = bitmap.height / 8 end if @character_name != nil and @character_name.include?('$xp') @cw = bitmap.width / 4 @ch = bitmap.height / 4 end self.ox = @cw / 2 self.oy = @ch end end end def update_src_rect if @character_name != nil and @character_name.include?('$xp') if @tile_id == 0 pattern = @character.pattern > 0 ? @character.pattern - 1 : 3 sx = pattern * @cw sy = (@character.direction - 2) / 2 * @ch self.src_rect.set(sx, sy, @cw, @ch) end else if @tile_id == 0 index = @character.character_index pattern = @character.pattern < 3 ? @character.pattern : 1 sx = (index % 4 * 3 + pattern) * @cw sy = (index / 4 * 4 + (@character.direction - 2) / 2) * @ch self.src_rect.set(sx, sy, @cw, @ch) end end end end #============================================================================== # ** Window_Base #============================================================================== class Window_Base < Window def draw_character(character_name, character_index, x, y) return if character_name == nil bitmap = Cache.character(character_name) sign = character_name[/^[!$]./] if character_name != nil and character_name.include?('$xp') cw = bitmap.width / 4 ch = bitmap.height / 4 n = character_index src_rect = Rect.new(0, 0, cw, ch) else if sign != nil and sign.include?('$') cw = bitmap.width / 3 ch = bitmap.height / 4 else cw = bitmap.width / 12 ch = bitmap.height / 8 end n = character_index src_rect = Rect.new((n%4*3+1)*cw, (n/4*4)*ch, cw, ch) end self.contents.blt(x - cw / 2, y - ch, bitmap, src_rect) end end
×