Andre4e Posted September 3, 2009 Share Posted September 3, 2009 (edited) Visualizzare oggetti ricevuti Descrizione Questo script è bellissimo secondo me,e quindi ho deciso di metterlo in questo forum perchè non c'era!Questo script fa vedere gli oggetti ricevuti direttamente sulla mappa tramite l'icona dell'oggetto!Visualizza oggetti,armi,armature e soldi!Spero vi piaccia! Autore Tibuda Allegati DemoScreenshot: Istruzioni per l'uso Inserite lo script in una classe sopra main Script: #============================================================================== # ** Item Popup #------------------------------------------------------------------------------ # Tibuda # Version 1.12 # 02.23.07 #------------------------------------------------------------------------------ # * Version History : # 01.11.07 - Version 1.00 # 01.13.07 - Version 1.01 # - Bug fix: Bug while tryin' to unequip an item in the equipment scene # - Added: Item number font customization # 01.19.07 - Version 1.10 # - Added: Fading icons when losing items (optional) # - Added: Background image (optional) # - Added: Custom colors for each item # - Added: You can show a icon in events # - Added: Custom colors when calling the popup_icon # 01.23.07 - Version 1.11 # - Bug fix: Bug while changin'g class or changin' equip in the map # 02.23.07 - Version 1.12 (one month) # - Bug fix: Showing icon with 0 items/gold #------------------------------------------------------------------------------ # * Instructions # - To show an icon call the following script: # $game_player.popup_icon(icon_name[, number, color]) # for the player # self.event.popup_icon(icon_name[, number, color]) # for the current event # $game_map.events[id].popup_icon(icon_name[, number, color]) # for the the event id # - Customizing the duration # ICON_TIME è il tempo per dare visualizzare l'item # ICON_DELAY è la durata di visualizzazione # - Colori # NUMBER_COLOR --> Colore default per tutti i tipi di item # GOLD_NUMBER_COLOR --> Colore per i soldi # ITEM_NUMBER_COLOR --> Colore per un specifico item. # Puoi aggiungere un colore in questo modo # ITEM_NUMBER_COLOR = {item_id => item_color, item_id => item_color....} # Se vuoi un colore di default per tutti gli item # Puoi usare --> item_id 0 # WEAPON_NUMBER_COLOR per le armi # ARMOR_NUMBER_COLOR per le armature,elmi,scudi ecc.. #============================================================================== #-------------------------------------------------------------------------- # module Popup_Item #-------------------------------------------------------------------------- module Popup_Item # Fading icons FADE_LOSE = false # The time we show the icon ICON_TIME = 20 # The time before show a new item ICON_DELAY = 24 # Icon to show when the player gets money GOLD_ICON = "032-Item01" # A 32x32 background image BACKGROUND = "" # Font for the item number NUMBER_FONT = "Tahoma" NUMBER_SIZE = 12 NUMBER_COLOR = Color.new(255, 255, 255) # Custom font color for specific items GOLD_NUMBER_COLOR = Color.new(255, 255, 0) ITEM_NUMBER_COLOR = {} ARMOR_NUMBER_COLOR = {} WEAPON_NUMBER_COLOR = {} # True if using Trickster's Method & Class Library TRICK_MACL = false end #-------------------------------------------------------------------------- # Game_Character #-------------------------------------------------------------------------- class Game_Character attr_accessor :popup_icons alias popup_gm_party_init initialize def initialize popup_gm_party_init @popup_icons = [] end def popup_icon(icon_name, number = 1, color = Popup_Item::NUMBER_COLOR) @popup_icons.push([icon_name, number, color]) end def fade_icon(icon_name, number = 1, color = Popup_Item::NUMBER_COLOR) popup_icon(icon_name, -number, color) if Popup_Item::FADE_LOSE end end #-------------------------------------------------------------------------- # Game_Party #-------------------------------------------------------------------------- class Game_Party attr_accessor :ignore_icon alias popup_gm_party_init initialize def initialize popup_gm_party_init @ignore_icon = false end def popup_icon(icon_name, number = 1, color = Popup_Item::NUMBER_COLOR) $game_player.popup_icon(icon_name, number, color) end def fade_icon(icon_name, number = 1, color = Popup_Item::NUMBER_COLOR) $game_player.fade_icon(icon_name, number, color) end alias popup_gm_party_gain_gold gain_gold def gain_gold(n) popup_gm_party_gain_gold(n) return if @ignore_icon || n < 1 if Popup_Item::GOLD_ICON != "" and $scene.is_a?(Scene_Map) if Popup_Item::GOLD_NUMBER_COLOR.is_a?(Color) color = Popup_Item::GOLD_NUMBER_COLOR else color = Popup_Item::NUMBER_COLOR end popup_icon(Popup_Item::GOLD_ICON, n, color) end end alias popup_gm_party_gain_item gain_item def gain_item(id, n) popup_gm_party_gain_item(id, n) return if id < 1 or id >= $data_items.size or @ignore_icon || n < 1 if $scene.is_a?(Scene_Map) if Popup_Item::ITEM_NUMBER_COLOR[id].is_a?(Color) color = Popup_Item::ITEM_NUMBER_COLOR[id] elsif Popup_Item::ITEM_NUMBER_COLOR[0].is_a?(Color) color = Popup_Item::ITEM_NUMBER_COLOR[0] else color = Popup_Item::NUMBER_COLOR end popup_icon($data_items[id].icon_name, n, color) end end alias popup_gm_party_gain_weapon gain_weapon def gain_weapon(id, n) popup_gm_party_gain_weapon(id, n) return if id < 1 or id >= $data_weapons.size or @ignore_icon || n < 1 if $scene.is_a?(Scene_Map) if Popup_Item::WEAPON_NUMBER_COLOR[id].is_a?(Color) color = Popup_Item::WEAPON_NUMBER_COLOR[id] elsif Popup_Item::WEAPON_NUMBER_COLOR[0].is_a?(Color) color = Popup_Item::WEAPON_NUMBER_COLOR[0] else color = Popup_Item::NUMBER_COLOR end popup_icon($data_weapons[id].icon_name, n, color) end end alias popup_gm_party_gain_armor gain_armor def gain_armor(id, n) popup_gm_party_gain_armor(id, n) return if id < 1 or id >= $data_armors.size or @ignore_icon || n < 1 if $scene.is_a?(Scene_Map) if Popup_Item::ARMOR_NUMBER_COLOR[id].is_a?(Color) color = Popup_Item::ARMOR_NUMBER_COLOR[id] elsif Popup_Item::ARMOR_NUMBER_COLOR[0].is_a?(Color) color = Popup_Item::ARMOR_NUMBER_COLOR[0] else color = Popup_Item::NUMBER_COLOR end popup_icon($data_armors[id].icon_name, n, color) end end end #-------------------------------------------------------------------------- # Game_Actor #-------------------------------------------------------------------------- class Game_Actor alias popup_gm_actor_equip equip def equip(equip_type, id) $game_party.ignore_icon = true popup_gm_actor_equip(equip_type, id) $game_party.ignore_icon = false end end #-------------------------------------------------------------------------- # module RPG #-------------------------------------------------------------------------- module RPG #-------------------------------------------------------------------------- # RPG::Sprite #-------------------------------------------------------------------------- class Sprite def popup_icon(name, number = 1, color = Popup_Item::NUMBER_COLOR) return if name == "" or name == nil return if number.is_a?(Numeric) and number < 0 and !Popup_Item::FADE_LOSE @icons = [] if !@icons.is_a?(Array) icon = {} icon["time"] = 0 - @icons.size * Popup_Item::ICON_DELAY if number.is_a?(Numeric) and number < 0 icon["fade"] = true number = - number else icon["fade"] = false end icon["sprite"] = RPG::Sprite.new(self.viewport) if Popup_Item::BACKGROUND != "" bitmap = RPG::Cache.picture(Popup_Item::BACKGROUND) icon["sprite"].bitmap = Bitmap.new(bitmap.width, bitmap.height) icon["sprite"].bitmap.blt(0, 0, bitmap, Rect.new(0,0,bitmap.width,bitmap.width)) else icon["sprite"].bitmap = Bitmap.new(32,32) end bitmap = RPG::Cache.icon(name) icon["sprite"].bitmap.blt(4, 4, bitmap, Rect.new(0,0,24,24)) if Popup_Item::NUMBER_SIZE > 0 and number != 1 and number != "" icon["sprite"].bitmap.font.outline = true if Popup_Item::TRICK_MACL icon["sprite"].bitmap.font.name = Popup_Item::NUMBER_FONT icon["sprite"].bitmap.font.size = Popup_Item::NUMBER_SIZE icon["sprite"].bitmap.font.color = color icon["sprite"].bitmap.draw_text(5, 28 - Popup_Item::NUMBER_SIZE - 1, 27, Popup_Item::NUMBER_SIZE, number.to_s) end icon["sprite"].ox = 0 icon["sprite"].oy = 20 icon["sprite"].x = self.x icon["sprite"].y = self.y - self.oy / 2 + 1 - icon["time"] icon["sprite"].z = 3000 icon["sprite"].visible = false @icons.push(icon) end def update_icons return unless @icons.is_a?(Array) return if Graphics.frame_count % 2 != 0 i = 0 while i < @icons.size if @icons[i]["time"] > Popup_Item::ICON_TIME @icons[i]["sprite"].bitmap.dispose @icons[i]["sprite"].dispose @icons.delete_at(i) else @icons[i]["time"] += 1 if @icons[i]["fade"] op = [255 * (1 - @icons[i]["time"] / Popup_Item::ICON_TIME),0].max @icons[i]["sprite"].opacity = op @icons[i]["sprite"].update else @icons[i]["sprite"].y -= 1 end @icons[i]["sprite"].visible = @icons[i]["time"] >= 0 i += 1 end end end alias popup_sprite_update update def update popup_sprite_update update_icons end end end #-------------------------------------------------------------------------- # Sprite_Character #-------------------------------------------------------------------------- class Sprite_Character alias popup_spr_char_update update def update popup_spr_char_update if @character.is_a?(Game_Character) while @character.popup_icons.size > 0 popup_icon(@character.popup_icons[0][0], @character.popup_icons[0][1], @character.popup_icons[0][2]) @character.popup_icons.delete_at(0) end end update_icons end end Bugs e Conflitti Noti N/A Altri Dettagli N/A Edited April 26, 2013 by Dilos Applicato tag code. http://files.nireblog.com/blogs4/narutozorro9kolas/files/firma-naruto-y-yondaime.gif Link to comment Share on other sites More sharing options...
Kingartur2 Posted September 3, 2009 Share Posted September 3, 2009 Ottimo, comunque il nome dell'autore sarebbe più utile se scrivi il suo forum di provenienza Per qualsiasi motivo non aprite questo spoiler. Ho detto di non aprirlo ! Se lo apri ancora esplode il mondo. Aaaaaa è un vizio. Contento? Il mondo è esploso, sono tutti morti per colpa della tua curiosità . Vuoi che ti venga anche il morbillo, la varicella e l'AIDS??? O bravo ora sei un malato terminale e nessuno ti puo curare, sono tutti morti ! Se clicchi ancora una volta il PC esplode. E dai smettila !! Uff!! Hai cliccato tante volte che ho dovuto sostituirlo con un codebox. http://s8.postimg.org/yntv9nxld/Banner.png http://img204.imageshack.us/img204/8039/sccontest3octpl3.gif Link to comment Share on other sites More sharing options...
Andre4e Posted September 3, 2009 Author Share Posted September 3, 2009 L'ho preso da rpg maker online quindi non so chi sia! http://files.nireblog.com/blogs4/narutozorro9kolas/files/firma-naruto-y-yondaime.gif Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now