Jump to content
Rpg²S Forum

BuddyTroller

Utenti
  • Posts

    834
  • Joined

  • Last visited

  • Days Won

    21

Posts posted by BuddyTroller

  1. Porca miseria. E mi sto trattenendo. Sai che non amo molto inserirmi con commenti poco tecnici ma stavolta ci vuole. Capisco che quello che è successo la settimana scorsa è abbastanza importante da minare anche un rapporto forte come il vostro. E tu vorresti abbandonare il progetto così? D'accordo, ci stai male, ma se abbandoni ci dai una delusione enorme! Almeno pensa ai tuoi fan. Per favore! Racconta col capitolo 3 anche questa fase negativa. Inventati qualcosa, holy! La migliore cosa è prendere una pausa e pensarci bene. E a freddo vedrai che troverai la soluzione giusta.

  2. Con gli script di gino/clyde/whatever non ti sbagli mai, sono ordinatissimi. Però senza indent non li posso vedere... :S

    Eccolo. Come nuovo:

     

     

     
    ################################################################################
    #
    # SPECCHI DI GINO - PER RPG MAKER VX - 11/02/2011
    #
    ################################################################################
    #
    # GINO È IL MIGLIORE. QUANDO È SOLO.
    #
    ################################################################################
    #
    # (D)ISTRUZIONI
    #
    # Create un'area chiamata Reflect, mi raccomando R maiuscola e il resto
    # minuscolo, senza altri caratteri in più. Larga un solo quadrato e lunga
    # quanto vi pare, anche se più di quattro è inutile. Questo Script riflette
    # sia il giocatore che qualsiasi altro evento, tranne eventi in stepping,
    # come per esempio il classico fuoco.
    #
    # SCOPO DELLO SCRIPT:
    # SPECCHI DI GINO VI PERMETTE DI AGGIUNGERE SPECCHI OVUNQUE VOGLIATE,
    # ANCHE NEL BEL MEZZO DELLA WORLD MAP, PERCHÉ NO?
    #
    ################################################################################
    #
    # RPG2S È L'UNICO FORUM DOVE POTRETE INCONTRARE GINO[Basta Cercare Bene!]:
    # http://www.rpg2s.net/forum/index.php
    #
    ################################################################################
    #
    # CREDITS:
    # -Questo script prende spunto da diversi altri script, primo fra tutti
    # *Thomas Edison VX di BulletXt:
    # Enhanced Version di Light Effects di Kylock
    # per la logica con cui strutturare uno script per RGSS2
    #
    ################################################################################
     
    class Sprite_Reflect < Sprite_Base
     
    attr_accessor :character
     
        def initialize(viewport = nil, character = nil)
            super(viewport)
            self.visible = false
            @character = character
            sprite_setup
            update
        end
        
        def sprite_setup
            self.bitmap = Cache.character(@character.character_name)
            self.opacity = 120
            self.y = 96
            sign = @character.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
        end
        
        def update
            super
            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)
            if @character.is_a?(Game_Player)
                self.ox = @cw / 2
                self.oy = 8 + @ch
            else
                self.ox = @cw / 2
                self.oy = 8 + @ch
            end
            self.x = @character.screen_x
            distance = (@character.screen_y - self.y) / 32
            if distance == 0
                self.opacity = 120
            elsif distance == 1
                self.opacity = 90
            elsif distance == 2
                self.opacity = 60
            elsif distance == 3
                self.opacity = 30
            end
            self.z = @character.screen_z + 10
        end
        
    end #class Sprite_Reflect
     
    ################################################################################
     
    class Spriteset_Map
     
        alias gino_sprite_reflection_create_characters create_characters
        def create_characters
            gino_sprite_reflection_create_characters
            @character_sprites = []
            @event_reflection_sprite = []
            @reflecting_events = []
            for i in $game_map.events.keys.sort
                sprite = Sprite_Character.new(@viewport1, $game_map.events[i])
                @character_sprites.push(sprite)
            end
            for vehicle in $game_map.vehicles
                sprite = Sprite_Character.new(@viewport1, vehicle)
                @character_sprites.push(sprite)
            end
            @character_sprites.push(Sprite_Character.new(@viewport1, $game_player))
            for i in $game_map.events.keys.sort
                sprite = Sprite_Reflect.new(@viewport1, $game_map.events[i])
                if $game_map.events[i].name.include?("Reflect")
                    @event_reflection_sprite.push(sprite)
                    @reflecting_events.push($game_map.events[i])
                end
            end
            @reflection_sprite = Sprite_Reflect.new(@viewport1, $game_player)
        end
        
        alias gino_sprite_reflection_update update
        def update
            gino_sprite_reflection_update
            if $game_player.current_area_name == "Reflect"
                if $game_player.moving? == false
                    @reflection_sprite.visible = true
                    @reflection_sprite.x = $game_player.current_area_x * 32 +32
                    @reflection_sprite.y = $game_player.current_area_y * 32
                end
            else
                @reflection_sprite.visible = false
            end
            for i in 0...@reflecting_events.size
                if @reflecting_events[i].current_area_name == "Reflect"
                    if @reflecting_events[i].moving? == false
                        @event_reflection_sprite[i].visible = true
                        @event_reflection_sprite[i].x = @reflecting_events[i].current_area_x * 32 +32
                        @event_reflection_sprite[i].y = @reflecting_events[i].current_area_y * 32
                    end
                else
                    @event_reflection_sprite[i].visible = false
                end
            end
            if @reflection_sprite.visible == true
                @reflection_sprite.update
            end
            for i in 0...@event_reflection_sprite.size
                if @event_reflection_sprite[i].visible == true
                    @event_reflection_sprite[i].update
                end
            end
        end
        
    end #class Spriteset_Map
     
    ################################################################################
     
    class Game_Character
        
        def in_area?(area)
            return false if area == nil
            return false if $game_map.map_id != area.map_id
            return false if @x < area.rect.x
            return false if @y < area.rect.y
            return false if @x >= area.rect.x + area.rect.width
            return false if @y >= area.rect.y + area.rect.height
            return true
        end
        
        def current_area_name
            for area in $data_areas.values
                if in_area?(area) == true
                    return_area_name = area.name
                    break
                end
            end
            return return_area_name
        end
        
        def current_area_x
            for area in $data_areas.values
                if in_area?(area) == true
                    area_x = area.rect.x
                    break
                end
            end
            return area_x
        end
        
        def current_area_y
            for area in $data_areas.values
                if in_area?(area) == true
                    area_y = area.rect.y
                    break
                end
            end
            return area_y
        end
        
    end #class Game_Character
     
    ################################################################################
     
    class Game_Event < Game_Character
     
        def name
            return @event.name
        end
     
    end
    

     



    EDIT: Corretto un triplo url in formato forum nell'intro dello script, un errore di battitura in (D)Istruzioni e un altro errore di battitura nelle ultime righe.

  3. Steam è il male. E sono così scorretti da cambiare le carte in tavola a gioco iniziato.

    Oltre al discorso che accettando lo Steam Subscriber Agreement accetti di risolvere ogni disputa con arbitrato (secondo voi per un gioco da 10€ me ne vado in Lussemburgo? XD), non sei proprietario di niente. Quella che acquisti nello Store è una Sottoscrizione, che ti permette di accedere al relativo software senza alcuna garanzia di continuità da parte di Steam. DI fatto se Gabe Newell domani si alzasse con la luna storta potrebbe togliermi un gioco dalla Libreria e sarebbe tutto regolare. I license key sono visualizzati solo quando necessario (Client di terze parti e giochi multiplayer), ed utilizzarli al di fuori di steam è teoricamente perseguibile. Non solo, molti giochi comprati in negozio richiedono NECESSARIAMENTE la registrazione tramite Steam, altri giochi ancora POSSONO essere registrati tramite Steam. Solo che una volta fatto sono soggetti alle stesse regole del cappero di qualsiasi Sottoscrizione.

×
×
  • Create New...