Jump to content
Rpg²S Forum

Rpg maker creator

Utenti
  • Posts

    12
  • Joined

  • Last visited

Posts posted by Rpg maker creator

  1. Buon pomeriggio. Proprio ieri avevo creato un topic in cui chiedevo uno script che permettesse di zoommare la mappa. Sono riuscito ad installarlo nel gioco. Ve lo incollo qui sotto

    #==============================================================================
    # ** Custom Resolution - Map Zoom
    # Version : 1.04
    # Author : LiTTleDRAgo
    #==============================================================================
    #
    # Introduction : 
    #
    #   As the name stated, this script zooms the map and player in the screen    
    #
    # How to Use :
    # 
    #   Script : 
    #      zoom(ZOOM)    # As an Integer (1-12)
    #
    # Note :
    #   
    #   Float zoom values will cause some glitch in the map
    #
    #==============================================================================
    ($imported ||= {})[:drg_cr_map_zoom] = 1.04
    
    core = "This script needs Drago - Core Engine ver 1.43 or above"
    reso = "This script needs F0's Custom Resolution ver 0.97a or above"
    rmxp = "This script only for RMXP"
    
    ($imported[:drg_core_engine] || 0) >= 1.43   || raise(core)
    $resolution &&  $resolution.version >= 0.971 || raise(reso)
    LiTTleDRAgo::XP                              || raise(rmxp)
    #==============================================================================
    # ** Sprite_Character
    #------------------------------------------------------------------------------
    #  This sprite is used to display the character.It observes the Game_Character
    #  class and automatically changes sprite conditions.
    #==============================================================================
    class Sprite_Character
      #--------------------------------------------------------------------------
      # * Alias Listing
      #--------------------------------------------------------------------------
      alias_sec_method(:zoom_update_scrolling, :update)
      #--------------------------------------------------------------------------
      # * Aliased method: update
      #--------------------------------------------------------------------------
      def update(*args)
        zoom_update_scrolling(*args)
        # Update character sprites
        self.zoom_x = $game_map.zoom_x
        self.zoom_y = $game_map.zoom_y
      end
    end
    
    #==============================================================================
    # ** Game_Map
    #------------------------------------------------------------------------------
    #  This class handles the map. It includes scrolling and passable determining
    #  functions. Refer to "$game_map" for the instance of this class.
    #==============================================================================
    class Game_Map
      #--------------------------------------------------------------------------
      # * New method: zoom
      #--------------------------------------------------------------------------
      def zoom(zoom=1.0)
        @zoom_x = [[zoom, 1].max,12].min.round
        @zoom_y = [[zoom, 1].max,12].min.round
      end
      #--------------------------------------------------------------------------
      # * New method: zoom_in
      #--------------------------------------------------------------------------
      def zoom_in
        zoom(@zoom_x + 1)
      end
      #--------------------------------------------------------------------------
      # * New method: zoom_out
      #--------------------------------------------------------------------------
      def zoom_out
        zoom(@zoom_x - 1)
      end
    end
    #==============================================================================
    # ** Interpreter 
    #------------------------------------------------------------------------------
    #  This interpreter runs event commands. This class is used within the
    #  Game_System class and the Game_Event class.
    #==============================================================================
    
    class Interpreter
      #--------------------------------------------------------------------------
      # * Redirect Listing
      #--------------------------------------------------------------------------
      redirect_method :zoom,     '$game_map.zoom'
      redirect_method :zoom_in,  '$game_map.zoom_in'
      redirect_method :zoom_out, '$game_map.zoom_out'
    end
    
    #==============================================================================
    # ** Game_Character
    #------------------------------------------------------------------------------
    #  This class deals with characters. It's used as a superclass for the
    #  determinants and map scrolling. Refer to "$game_player" for the one
    #  Game_Player and Game_Event classes.
    #==============================================================================
    class Game_Character
      #--------------------------------------------------------------------------
      # * Alias Listing
      #--------------------------------------------------------------------------
      alias_sec_method(:screen_x_before_zoom, :screen_x)
      alias_sec_method(:screen_y_before_zoom, :screen_y)
      alias_sec_method(:screen_z_before_zoom, :screen_z)
      #--------------------------------------------------------------------------
      # * Aliased method: screen_x
      #--------------------------------------------------------------------------
      def screen_x(*args)
        # Get screen coordinates from real coordinates and map display position
        screen_x_before_zoom(*args) * $game_map.zoom_x
      end
      #--------------------------------------------------------------------------
      # * Aliased method: screen_y
      #--------------------------------------------------------------------------
      def screen_y(*args)
        # Get screen coordinates from real coordinates and map display position
        screen_y_before_zoom(*args) * $game_map.zoom_y
      end
      #--------------------------------------------------------------------------
      # * Overwriten method: screen_z
      #--------------------------------------------------------------------------
      def screen_z(height = 0)
        # If display flag on closest surface is ON
        if @always_on_top
          # 999, unconditional
          return 999
        end
        # Get screen coordinates from real coordinates and map display position
        z = (@real_y - $game_map.display_y + 3) * $game_map.zoom_y / 4 + 32 
        # If tile
        if @tile_id > 0
          # Add tile priority * 32
          return z  + $game_map.priorities[@tile_id] * 32 
        # If character
        else
          # If height exceeds 32, then add 31
          return z + ((height > 32) ? 31 : 0)
        end
      end
    end
    #==============================================================================
    # ** Spriteset_Map
    #------------------------------------------------------------------------------
    #  This class brings together map screen sprites, tilemaps, etc.
    #  It's used within the Scene_Map class.
    #==============================================================================
    
    class Spriteset_Map
      #--------------------------------------------------------------------------
      # * Alias Listing
      #--------------------------------------------------------------------------
      alias_sec_method(:zoom_update_scrolling, :update)
      #--------------------------------------------------------------------------
      # * Aliased method: update
      #--------------------------------------------------------------------------
      def update(*args)
        zoom_update_scrolling(*args)
        @fog.zoom_x *= $game_map.zoom_x
        @fog.zoom_y *= $game_map.zoom_y
        @panorama.zoom_x *= $game_map.zoom_x
        @panorama.zoom_y *= $game_map.zoom_y
      end
    end
    

    Ovviamente ho anche installato tutti gli script necessari per il funzionamento di quest'ultimo.

    Ora volevo creare un evento in cui la telecamera zommava sul protagonista ma non so bene come si fa :tongue:, qualcuno può aiutarmi?

    Grazie mille :biggrin:

  2. Buonasera. Sto creando un gioco con RMXP e per una cutscene dovevo zoomare sulla protagonista. Purtroppo si può fare solo con uno script e volevo sapere come ottenerlo e come installarlo sul programma dato che non sono molto pratico di queste cose! :tongue:

    Grazie in anticipo

  3. I movimenti che fa Bob sono:

     

    -Move down

    -Move down

    -Move down

    -Move down

    -Move down

    -Move right

    -Wait 70 seconds

    -Move right

     

    L'evento in parallel process dice:

     

    - Variable [0001: Bobentra] = Random 1..4

    - Condizione se: Variable [0001: Bobentra] == 4

    - - Message: "BOB STA ENTRANDO! SBRIGATI!

    - - Wait: 60 frames

    - - Condizione se: Switch [0001: Portabloccata] == OFF

    - - - Message: "BOB E' ENTRATO"

    - - - Game Over

    - - -

    - - - Else Handler

    - - - Message: "HAI BLOCCATO BOB"

    - - - End

    - - -

    - - Else Handler

    - -

    - - End

    - Erase Event

  4. Prova a descrivermi gli eventi che hai già nel progetto riguardanti Bob o metti qualche screen, così possiamo vedere come incastrare le cose.

    ^ ^

     

    Puoi dirmi come si inviano gli screen in questo sito? :gne: :gne: :gne:

  5. Uhm... purtroppo ho appena provato... però anche se chiudo la porta per non farlo entrare mi mostra lo stesso il messaggio che dice: "Bob è entrato" e dopo un tot di secondo mi fa morire... poi, visto che il gioco si basa sul fatto che devi tenere Bob lontano dalla camera principale, lui verrà più di una volta e quindi se metto un Elimina evento alla fine, quando ritornerà il comando non seguirà niente e quindi lui entrerà ma non mi farà morire. Però Bob ha un percorso che gli ho impostato che, se non entra nella camera principale, torna indietro. Poi aspetta un po' e poi ritorna verso la stanza principale e così via. Quindi non entra nella stanza dove sono io. Io posso girovagare per vedere dov'è ma la stanza che devo proteggere chiudendo la porta è quella centrale. Un po' come Five Nights at Freddy's :tongue:

  6. Aspetta, prova a spiegare meglio i passaggi.

    Se tu sai che ad un certo punto Bob compare nella stanza, allora è fatta, appena dopo quel comando e qualche aspetta tot secondi puoi mettere il resto dei comandi come mostrare l'immagine ed il suono.

    ^ ^

    Io ho sei/sette stanze in un unica mappa (50x50). L'obbiettivo del gioco è cercare in tutti i modi di tenere Bob (che si sposta in diversi luoghi) lontano dalla stanza principale. Quando lui entra nella stanza principale allora compare un'immagine che dice: "Bob è entrato nella tua stanza" e poi fai game over. Un modo per tenerlo fuori è bloccare la porta. Se però non fai in tempo e lui entra allora fai game over. Quindi non c'è un momento preciso in cui Bob entra. Ero in difficoltà perchè, essendoci la possibilità di respingerlo, non potevo fare che, dopo che lui entrava nella stanza, appariva l'immagine, sennò ci sarebbero game over continui ;)

  7. Purtroppo non sono molto bravo con queste cose... se puoi potresti fare degli screenshot dove fai questi passaggi?

    Comunque non voglio vedere quando un evento è sopra ad un altro... vorrei solo che Bob, entrato nella stanza, faccia partire un comando che mi faccia vedere un immagine e che faccia partire un suono da me scelti.

  8. Buongiorno. Ho un problemino. Io sto creando un gioco su rpg maker xp. C'è questo personaggio che si chiama Bob. Io ho preparato un evento che doveva essere attivato da Bob quando ci passava sopra. Le ho provate tutte ma nessuna funzionava e quindi vi volevo chiedere: c'è un modo per far attivare un evento da un altro evento?

×
×
  • Create New...