-
Numero contenuti
2618 -
Iscritto
-
Ultima visita
-
Days Won
141
Risposte pubblicati da MrSte
-
-
-
In realtà il modo c'è: se ben ricordo questo bs è composto da 3 o 4 scripts; in uno degli script, che contiene la configurazione principale dovrebbe esserci la stringa:
Show_Damage_Sprites = true
qutto quello che devi fare è sostituire true con false ed è fatta
Solo io non ho notato questo codice xD. Comunque proverò come dici tu Ghost
-
Ste non so se l'hai notato, ma nel primo screen l'edificio a sinistra è completamente delimitato dall'autotile dell'erba. Questo errore non da un senso di profondità all'edificio. Pertanto faresti meglio a delimitarlo soltanto alla base, mentre per il resto utilizzi l'autotile con shift (:
Grazie per avermelo fatto notare . Riparerò al danno
-
-
-
-
Montironi Games Presenta
Come è nato Crime?
Crime è nato nel lontano 2009 all'epoca non ero molto esperto in RPG Maker, ma avevo ancora la versione XP, ma siccome a causa di scarse risorse e script che bastavano per creare Crime lo abbandonai. Nel Luglio 2012 ripresi il mondo del making e scaricai la versione VX Ace, e da li le cose iniziarono a ragionare, rimediai di tutto dalle risorse grafiche hai script che mi erano più necessari. E alla fine di Agosto 2012 ripresi il progetto Crime, e fondai anche la Montironi Games
Sviluppo
Crime ha avuto una serie di sviluppi e cambiamenti date però alla Demo. La versione completa uscirà nel 2013 ma non so ancora se alla fine di Novembre oppure inizi Dicembre, per via dei miei impegni. Comunque chi è interessato a scaricare la Demo eccovi il link del topic
Demo: http://www.makerando.com/index.php?/topic/40-demo-crime/
Release: (Work in progress)
PS: Ricordo anche che in questo topic verrà data ogni notizia riguardo allo sviluppo di Crime compressi gli screen
Betta97 reacted to this -
Sono proprio curioso di vedere questo the legenf of nosense
Per il resto aspetto altri aggiornamenti
-
Grande Ghostino
-
E' un espressione che usiamo dalle mie parti significa: Grandi
-
Io lo dico sempre per me Tecno e Ghost nelle foto sono i più grossi (Forse più Ghost con gli Afro xD)
-
Yes Ghost credo che domani modificherò il topic facendo una piccola guida su come modificare la Mappa
-
Benvenuta , vedo che hai seguito i video tutorial del Ghostino come ho fatto io brava . Per qualsiasi cosa riguardo a Rpg Maker non esitare chiedere
-
Quello che avevo notato anche io xD
-
Concordo anche io con Tecno
-
Autore: painhurt
Informazioni: Tileset Modern per creare la vostra città
Tile A1
Tile A2
Tile A3
Tile A4
Tile A5
Tile B
Tile C
Tile D
Tile E
Loppa reacted to this -
E' legale Ghost lo avevo raccattato in un forum italiano di RPG Maker era là e lo preso
Ghost Rider reacted to this -
I Video di Ghost sui tutorial di RPG Maker sono meglio di un Professore
Ghost Rider reacted to this -
Autore: Ignoto
Informazioni: Un Pack di Tileset molto realistici in stile medievale
Tile A3
Tile A5
Tile B
Tile C
Tile D
TecnoNinja e Ghost Rider reacted to this -
Autore: Ignoto
Informazioni: Un bel Pack di Tileset dove ci sono auto distrutte, svastiche, case distrutte ecc...
Download per il Pack: https://mega.co.nz/#!8pgXlYqQ!a2H9YD_OmBjfxaTa6Bj_sERkvNlXp1h0qtr0_MLslOs
TecnoNinja reacted to this -
Autore: Behemoth
Informazioni: Questo splendido ABS sparatutto è creato in un modo perfetto
Abilità dello script:
1) Voci per i nemici
2) Minimappa
3) HUD displays
4) Bullet Time in stile Max Payne
5) Sistema di arrampicamento sul muro
6) Esplosioni
7) Modo organizzato per le armi
8) Azioni delle pallottole
9) Tool di editing già integrato all'interno (Solo durante il testo)
10) L'A.I. dei nemici può vedere tutto quello che accade
11) I Volumi di effetti speciali cambiano il volume in base alla posizione del PG
Screenshot:
Download: http://www.mediafire.com/download/jg5kt5ytgo5ddbx/Behemoths+Projectile+Abs.rar
Ghost Rider e TecnoNinja reacted to this -
Autore: Mr Mo
Informazioni: Un bellissimo ABS per RPG Maker XP
Screenshot:
Download: http://www.mediafire.com/download/02zzhwzzwzm/Mr+Mo+ABS+5.5+traduzido+br+beta.rar
Ghost Rider reacted to this -
Il file suono del audio lo sceglie lo script testo dentro RPG Maker VX Ace
-
Autore: Tomy@Kamesoft
Informazioni: Aggiunge una semplice minimappa nel gioco
Screenshot:
#_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/#_/ ◆ Minimap - KMS_MiniMap ◆ VXAce ◆#_/ ◇ Last update : 2012/02/12 (TOMY@Kamesoft) ◇#_/ ◇ Website: http://ytomy.sakura.ne.jp/ ◇#_/ ◇ Translated by Mr. Bubble ◇#_/----------------------------------------------------------------------------#_/ Createts a minimap HUD based off the passability settings of the map.#_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/# This script is plug-and-play, but various customization options are available.#----------------------------------------------------------------------------# Map Notetags#----------------------------------------------------------------------------# Notetags are added to "Notes" boxes. Right-click a map and select# Map Properties to find the "Notes" box for maps.## <minimap hide># Completely disables the minimap on a specific map. [NOMAP] can also be# added to the beginning of map names for the same effect.#----------------------------------------------------------------------------# Event Comment Tags#----------------------------------------------------------------------------# Since events do not have noteboxes, comment tags are used instead. Open the# event, create a new event command, go to Tab 1, and click the "Comment..."# event command. A box will open up allowing you to enter tags.## IMPORTANT NOTE: All comment tags must be at the top of the list of event# commands in an event in order for the color to appear.## <minimap wall># Add this tag to an event's comment to change its minimap color to the# same as an impassable tile.## <minimap move># Add this tag to an event's comment to have them blink in the minimap.## <minimap obj n># Add this tag to an event's comment to have them blink in the minimap with# a specified color where n is the OBJ value defined in OBJECT_COLOR which# is found in the customization module below.#----------------------------------------------------------------------------# Script Calls#----------------------------------------------------------------------------# Script calls are used in "Script..." event commands located under Tab 3.## hide_minimap# Use this script call to hide the minimap on command.## show_minimap# Use this script call to show the minimap on command.## refresh_minimap# Use this script call to refresh the minimap.## update_minimap_object# Use this script call to refresh objects on the minimap such as events.#----------------------------------------------------------------------------# Script Calls : Conditional Branches#----------------------------------------------------------------------------# The following script calls can be used in Conditional Branches.## minimap_showing?# Determines if the minimap is currently showing/hidden.#----------------------------------------------------------------------------# Usage Notes#----------------------------------------------------------------------------# Impassable events will not appear as the correct color in the minimap.# This effect is intended. If you want an event to appear as impassable# on the minimap, add the tag <minimap wall> to an event's comment.#_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/#==============================================================================# ★ BEGIN Setting ★#==============================================================================module KMS_MiniMap# * Minimap Display Toggle Button# Set to nil to disable this functionSWITCH_BUTTON = :Z# * Minimap Size and Position (x, y, width, height)MAP_RECT = Rect.new(364, 20, 160, 120)# * Minimap z-layer Priority# Glitchy if this value is set too highMAP_Z = 0# * Minimap Grid Size# A size of 3 or higher is recommendedGRID_SIZE = 5# * Mini-Map Color Settings# Color.new(red, green, blue, opacity)FOREGROUND_COLOR = Color.new(224, 224, 255, 160) # Foreground (passable)BACKGROUND_COLOR = Color.new( 0, 0, 160, 160) # Background (not passable)POSITION_COLOR = Color.new(255, 0, 0, 192) # Current Position colorMOVE_EVENT_COLOR = Color.new(255, 160, 0, 192) # Moving event colorVEHICLE_COLOR = Color.new( 96, 128, 0, 192) # Vehicle color# * Object Color Presets# Create custom color presets for events tagged with the# corresponding OBJ tagOBJECT_COLOR = [# Color.new(red, green, blue, opacity)Color.new( 0, 128, 0, 192), # OBJ 1Color.new( 0, 160, 160, 192), # OBJ 2Color.new(160, 0, 160, 192), # OBJ 3# More color presets may be added in this array where OBJ number is# determined by the position in the list (OBJ 4, OBJ 5, etc.)] # <- Do not delete this line# * Minimap Blinking Frequency# Values 5~8 are recommendedBLINK_LEVEL = 7# * Minimap Cache Setting# This script creates a cache for each map. If the number of cached# maps exceed CACHE_NUM, oldest cached maps are deleted.CACHE_NUM = 10end#==============================================================================# ☆ END Setting ☆#==============================================================================$kms_imported = {} if $kms_imported == nil$kms_imported["MiniMap"] = truemodule KMS_MiniMap# ミニマップ非表示REGEX_NO_MINIMAP_NOTE = /<(?:ミニマップ|MINIMAP)s*(?:非表示|HIDE)>/iREGEX_NO_MINIMAP_NAME = /[NOMAP]/i# 障害物REGEX_WALL_EVENT = /<(?:ミニマップ|MINIMAP)s*(?:壁|障害物|WALL)>/i# 移動イベントREGEX_MOVE_EVENT = /<(?:ミニマップ|MINIMAP)s*(?:移動|MOVE)>/i# オブジェクトREGEX_OBJECT = /<(?:ミニマップ|MINIMAP)s+OBJ(?:ECT)?s*(d+)>/iend# *****************************************************************************#==============================================================================# □ KMS_Commands#==============================================================================module KMS_Commandsmodule_function#--------------------------------------------------------------------------# ○ ミニマップを表示#--------------------------------------------------------------------------def show_minimap$game_temp.minimap_manual_visible = true$game_system.minimap_show = trueend#--------------------------------------------------------------------------# ○ ミニマップを隠す#--------------------------------------------------------------------------def hide_minimap$game_system.minimap_show = falseend#--------------------------------------------------------------------------# ○ ミニマップ表示状態の取得#--------------------------------------------------------------------------def minimap_showing?return $game_system.minimap_showend#--------------------------------------------------------------------------# ○ ミニマップをリフレッシュ#--------------------------------------------------------------------------def refresh_minimapreturn unless SceneManager.scene_is?(Scene_Map)$game_map.refresh if $game_map.need_refreshSceneManager.scene.refresh_minimapend#--------------------------------------------------------------------------# ○ ミニマップのオブジェクトを更新#--------------------------------------------------------------------------def update_minimap_objectreturn unless SceneManager.scene_is?(Scene_Map)$game_map.refresh if $game_map.need_refreshSceneManager.scene.update_minimap_objectendend#==============================================================================# ■ Game_Interpreter#==============================================================================class Game_Interpreter# イベントコマンドから直接コマンドを叩けるようにするinclude KMS_Commandsend#==============================================================================# ■ RPG::Map#==============================================================================class RPG::Map#--------------------------------------------------------------------------# ○ ミニマップのキャッシュ生成#--------------------------------------------------------------------------def create_minimap_cache@__minimap_show = truenote.each_line { |line|if line =~ KMS_MiniMap::REGEX_NO_MINIMAP_NOTE # マップ非表示@__minimap_show = falseend}end#--------------------------------------------------------------------------# ○ ミニマップ表示#--------------------------------------------------------------------------def minimap_show?create_minimap_cache if @__minimap_show.nil?return @__minimap_showendend#==============================================================================# ■ RPG::MapInfo#==============================================================================class RPG::MapInfo#--------------------------------------------------------------------------# ● マップ名取得#--------------------------------------------------------------------------def namereturn @name.gsub(/[.*]/) { "" }end#--------------------------------------------------------------------------# ○ オリジナルマップ名取得#--------------------------------------------------------------------------def original_namereturn @nameend#--------------------------------------------------------------------------# ○ ミニマップのキャッシュ生成#--------------------------------------------------------------------------def create_minimap_cache@__minimap_show = !(@name =~ KMS_MiniMap::REGEX_NO_MINIMAP_NAME)end#--------------------------------------------------------------------------# ○ ミニマップ表示#--------------------------------------------------------------------------def minimap_show?create_minimap_cache if @__minimap_show == nilreturn @__minimap_showendend#==============================================================================# ■ Game_Temp#==============================================================================class Game_Temp#--------------------------------------------------------------------------# ○ 公開インスタンス変数#--------------------------------------------------------------------------attr_accessor :minimap_manual_visible # ミニマップ手動表示切り替えフラグ#--------------------------------------------------------------------------# ○ オブジェクト初期化#--------------------------------------------------------------------------alias initialize_KMS_MiniMap initializedef initializeinitialize_KMS_MiniMap@minimap_manual_visible = trueendend#==============================================================================# ■ Game_System#==============================================================================class Game_System#--------------------------------------------------------------------------# ○ 公開インスタンス変数#--------------------------------------------------------------------------attr_accessor :minimap_show # ミニマップ表示フラグ#--------------------------------------------------------------------------# ○ オブジェクト初期化#--------------------------------------------------------------------------alias initialize_KMS_MiniMap initializedef initializeinitialize_KMS_MiniMap@minimap_show = trueendend#==============================================================================# ■ Game_Map#==============================================================================class Game_Map#--------------------------------------------------------------------------# ○ 定数#--------------------------------------------------------------------------MINIMAP_FADE_NONE = 0 # ミニマップ フェードなしMINIMAP_FADE_IN = 1 # ミニマップ フェードインMINIMAP_FADE_OUT = 2 # ミニマップ フェードアウト#--------------------------------------------------------------------------# ○ 公開インスタンス変数#--------------------------------------------------------------------------attr_accessor :minimap_fade#--------------------------------------------------------------------------# ○ ミニマップを表示するか#--------------------------------------------------------------------------def minimap_show?return $data_mapinfos[map_id].minimap_show? && @map.minimap_show?end#--------------------------------------------------------------------------# ○ ミニマップをフェードイン#--------------------------------------------------------------------------def fadein_minimap@minimap_fade = MINIMAP_FADE_INend#--------------------------------------------------------------------------# ○ ミニマップをフェードアウト#--------------------------------------------------------------------------def fadeout_minimap@minimap_fade = MINIMAP_FADE_OUTend#--------------------------------------------------------------------------# ● リフレッシュ#--------------------------------------------------------------------------alias refresh_KMS_MiniMap refreshdef refreshrefresh_KMS_MiniMapSceneManager.scene.refresh_minimap if SceneManager.scene_is?(Scene_Map)endend#==============================================================================# ■ Game_Event#==============================================================================class Game_Event < Game_Character#--------------------------------------------------------------------------# ○ ミニマップ用のキャッシュを作成#--------------------------------------------------------------------------def __create_minimap_cache@__last_page = @page@__minimap_wall_event = false@__minimap_move_event = false@__minimap_object_type = -1return if @page.nil?@page.list.each { |cmd|# 注釈以外に到達したら離脱break unless [108, 408].include?(cmd.code)# 正規表現判定case cmd.parameters[0]when KMS_MiniMap::REGEX_WALL_EVENT@__minimap_wall_event = truewhen KMS_MiniMap::REGEX_MOVE_EVENT@__minimap_move_event = truewhen KMS_MiniMap::REGEX_OBJECT@__minimap_object_type = $1.to_iend}endprivate :__create_minimap_cache#--------------------------------------------------------------------------# ○ グラフィックがあるか#--------------------------------------------------------------------------def graphic_exist?return (character_name != "" || tile_id > 0)end#--------------------------------------------------------------------------# ○ 障害物か#--------------------------------------------------------------------------def is_minimap_wall_event?if @__minimap_wall_event.nil? || @__last_page != @page__create_minimap_cacheendreturn @__minimap_wall_eventend#--------------------------------------------------------------------------# ○ 移動イベントか#--------------------------------------------------------------------------def is_minimap_move_event?if @__minimap_move_event.nil? || @__last_page != @page__create_minimap_cacheendreturn @__minimap_move_eventend#--------------------------------------------------------------------------# ○ ミニマップオブジェクトか#--------------------------------------------------------------------------def is_minimap_object?if @__minimap_object_type.nil? || @__last_page != @page__create_minimap_cacheendreturn @__minimap_object_type > 0end#--------------------------------------------------------------------------# ○ ミニマップオブジェクトタイプ#--------------------------------------------------------------------------def minimap_object_typeif @__minimap_object_type.nil? || @__last_page != @page__create_minimap_cacheendreturn @__minimap_object_typeendend#==============================================================================# □ Game_MiniMap#------------------------------------------------------------------------------# ミニマップを扱うクラスです。#==============================================================================class Game_MiniMap#--------------------------------------------------------------------------# ○ 構造体#--------------------------------------------------------------------------Point = Struct.new(:x, :y)Size = Struct.new(:width, :height)PassageCache = Struct.new(:map_id, :table, :scan_table)#--------------------------------------------------------------------------# ○ クラス変数#--------------------------------------------------------------------------@@passage_cache = [] # 通行フラグテーブルキャッシュ#--------------------------------------------------------------------------# ● オブジェクト初期化#--------------------------------------------------------------------------def initialize(tilemap)@map_rect = KMS_MiniMap::MAP_RECT@grid_size = [KMS_MiniMap::GRID_SIZE, 1].max@x = 0@y = 0@grid_num = Point.new((@map_rect.width + @grid_size - 1) / @grid_size,(@map_rect.height + @grid_size - 1) / @grid_size)@draw_grid_num = Point.new(@grid_num.x + 2, @grid_num.y + 2)@draw_range_begin = Point.new(0, 0)@draw_range_end = Point.new(0, 0)@tilemap = tilemap@last_x = $game_player.x@last_y = $game_player.y@showing = false@hiding = falsecreate_spritesrefreshunless $game_temp.minimap_manual_visibleself.opacity = 0endend#--------------------------------------------------------------------------# ○ スプライト作成#--------------------------------------------------------------------------def create_sprites@viewport = Viewport.new(@map_rect)@viewport.z = KMS_MiniMap::MAP_Z# ビットマップサイズ計算@bmp_size = Size.new((@grid_num.x + 2) * @grid_size,(@grid_num.y + 2) * @grid_size)@buf_bitmap = Bitmap.new(@bmp_size.width, @bmp_size.height)# マップ用スプライト作成@map_sprite = Sprite.new(@viewport)@map_sprite.x = -@grid_size@map_sprite.y = -@grid_size@map_sprite.z = 0@map_sprite.bitmap = Bitmap.new(@bmp_size.width, @bmp_size.height)# オブジェクト用スプライト作成@object_sprite = Sprite_MiniMapIcon.new(@viewport)@object_sprite.x = -@grid_size@object_sprite.y = -@grid_size@object_sprite.z = 1@object_sprite.bitmap = Bitmap.new(@bmp_size.width, @bmp_size.height)# 現在位置スプライト作成@position_sprite = Sprite_MiniMapIcon.new@position_sprite.x = @map_rect.x + @grid_num.x / 2 * @grid_size@position_sprite.y = @map_rect.y + @grid_num.y / 2 * @grid_size@position_sprite.z = @viewport.z + 2bitmap = Bitmap.new(@grid_size, @grid_size)bitmap.fill_rect(bitmap.rect, KMS_MiniMap::POSITION_COLOR)@position_sprite.bitmap = bitmapend#--------------------------------------------------------------------------# ● 解放#--------------------------------------------------------------------------def dispose@buf_bitmap.dispose@map_sprite.bitmap.dispose@map_sprite.dispose@object_sprite.bitmap.dispose@object_sprite.dispose@position_sprite.bitmap.dispose@position_sprite.dispose@viewport.disposeend#--------------------------------------------------------------------------# ○ 可視状態取得#--------------------------------------------------------------------------def visiblereturn @map_sprite.visibleend#--------------------------------------------------------------------------# ○ 可視状態設定#--------------------------------------------------------------------------def visible=(value)@viewport.visible = value@map_sprite.visible = value@object_sprite.visible = value@position_sprite.visible = valueend#--------------------------------------------------------------------------# ○ 不透明度取得#--------------------------------------------------------------------------def opacityreturn @map_sprite.opacityend#--------------------------------------------------------------------------# ○ 不透明度設定#--------------------------------------------------------------------------def opacity=(value)@map_sprite.opacity = value@object_sprite.opacity = value@position_sprite.opacity = valueend#--------------------------------------------------------------------------# ○ リフレッシュ#--------------------------------------------------------------------------def refreshupdate_draw_rangeupdate_passage_tableupdate_object_listupdate_positiondraw_mapdraw_objectGraphics.frame_resetend#--------------------------------------------------------------------------# ○ フェードイン#--------------------------------------------------------------------------def fadein@showing = true@hiding = falseend#--------------------------------------------------------------------------# ○ フェードアウト#--------------------------------------------------------------------------def fadeout@showing = false@hiding = trueend#--------------------------------------------------------------------------# ○ キー入力更新#--------------------------------------------------------------------------def update_inputreturn if KMS_MiniMap::SWITCH_BUTTON.nil?if Input.trigger?(KMS_MiniMap::SWITCH_BUTTON)if opacity < 255 && !@showing$game_temp.minimap_manual_visible = truefadeinelsif opacity > 0 && !@hiding$game_temp.minimap_manual_visible = falsefadeoutendendend#--------------------------------------------------------------------------# ○ 描画範囲更新#--------------------------------------------------------------------------def update_draw_rangerange = [](2).times { |i| range = @draw_grid_num / 2 }@draw_range_begin.x = $game_player.x - range[0]@draw_range_begin.y = $game_player.y - range[1]@draw_range_end.x = $game_player.x + range[0]@draw_range_end.y = $game_player.y + range[1]end#--------------------------------------------------------------------------# ○ 通行可否テーブル更新#--------------------------------------------------------------------------def update_passage_tablecache = get_passage_table_cache@passage_table = cache.table@passage_scan_table = cache.scan_tableupdate_around_passage_tableend#--------------------------------------------------------------------------# ○ 通行可否テーブルのキャッシュを取得#--------------------------------------------------------------------------def get_passage_table_cachemap_id = $game_map.map_idcache = @@passage_cache.find { |c| c.map_id == map_id }# キャッシュミスしたら新規作成if cache == nilcache = PassageCache.new(map_id)cache.table = Table.new($game_map.width, $game_map.height)cache.scan_table = Table.new(($game_map.width + @draw_grid_num.x - 1) / @draw_grid_num.x,($game_map.height + @draw_grid_num.y - 1) / @draw_grid_num.y)end# 直近のキャッシュは先頭に移動し、古いキャッシュは削除@@passage_cache.unshift(cache)@@passage_cache.delete_at(KMS_MiniMap::CACHE_NUM)return cacheend#--------------------------------------------------------------------------# ○ 通行可否テーブルのキャッシュをクリア#--------------------------------------------------------------------------def clear_passage_table_cachereturn if @passage_scan_table == niltable = @passage_scan_table@passage_scan_table = Table.new(table.xsize, table.ysize)end#--------------------------------------------------------------------------# ○ 通行可否テーブルの探索# x, y : 探索位置#--------------------------------------------------------------------------def scan_passage(x, y)dx = x / @draw_grid_num.xdy = y / @draw_grid_num.y# 探索済みreturn if @passage_scan_table[dx, dy] == 1# マップ範囲外return unless dx.between?(0, @passage_scan_table.xsize - 1)return unless dy.between?(0, @passage_scan_table.ysize - 1)rx = (dx * @draw_grid_num.x)...((dx + 1) * @draw_grid_num.x)ry = (dy * @draw_grid_num.y)...((dy + 1) * @draw_grid_num.y)mw = $game_map.width - 1mh = $game_map.height - 1# 探索範囲内の通行テーブルを生成rx.each { |x|next unless x.between?(0, mw)ry.each { |y|next unless y.between?(0, mh)# 通行方向フラグ作成# (↓、←、→、↑ の順に 1, 2, 4, 8 が対応)flag = 0[2, 4, 6, 8].each{ |d|flag |= 1 << (d / 2 - 1) if $game_map.passable?(x, y, d)}@passage_table[x, y] = flag}}@passage_scan_table[dx, dy] = 1end#--------------------------------------------------------------------------# ○ 周辺の通行可否テーブル更新#--------------------------------------------------------------------------def update_around_passage_tablegx = @draw_grid_num.xgy = @draw_grid_num.ydx = $game_player.x - gx / 2dy = $game_player.y - gy / 2scan_passage(dx, dy)scan_passage(dx + gx, dy)scan_passage(dx, dy + gy)scan_passage(dx + gx, dy + gy)end#--------------------------------------------------------------------------# ○ オブジェクト一覧更新#--------------------------------------------------------------------------def update_object_listevents = $game_map.events.values# WALL@wall_events = events.find_all { |e| e.is_minimap_wall_event? }# MOVE@move_events = events.find_all { |e| e.is_minimap_move_event? }# OBJ@object_list = events.find_all { |e| e.is_minimap_object? }end#--------------------------------------------------------------------------# ○ 位置更新#--------------------------------------------------------------------------def update_position# 移動量算出pt = Point.new($game_player.x, $game_player.y)ox = ($game_player.real_x - pt.x) * @grid_sizeoy = ($game_player.real_y - pt.y) * @grid_size@viewport.ox = ox@viewport.oy = oy# 移動していたらマップ再描画if pt.x != @last_x || pt.y != @last_ydraw_map@last_x = pt.x@last_y = pt.yendend#--------------------------------------------------------------------------# ○ 描画範囲内判定#--------------------------------------------------------------------------def in_draw_range?(x, y)rb = @draw_range_beginre = @draw_range_endreturn (x.between?(rb.x, re.x) && y.between?(rb.y, re.y))end#--------------------------------------------------------------------------# ○ マップ範囲内判定#--------------------------------------------------------------------------def in_map_range?(x, y)mw = $game_map.widthmh = $game_map.heightreturn (x.between?(0, mw - 1) && y.between?(0, mh - 1))end#--------------------------------------------------------------------------# ○ マップ描画#--------------------------------------------------------------------------def draw_mapupdate_around_passage_tablebitmap = @map_sprite.bitmapbitmap.fill_rect(bitmap.rect, KMS_MiniMap::BACKGROUND_COLOR)draw_map_foreground(bitmap)draw_map_move_event(bitmap)end#--------------------------------------------------------------------------# ○ 通行可能領域の描画#--------------------------------------------------------------------------def draw_map_foreground(bitmap)range_x = (@draw_range_begin.x)..(@draw_range_end.x)range_y = (@draw_range_begin.y)..(@draw_range_end.y)map_w = $game_map.width - 1map_h = $game_map.height - 1rect = Rect.new(0, 0, @grid_size, @grid_size)range_x.each { |x|next unless x.between?(0, map_w)range_y.each { |y|next unless y.between?(0, map_h)next if @passage_table[x, y] == 0next if @wall_events.find { |e| e.x == x && e.y == y } # 壁# グリッド描画サイズ算出rect.set(0, 0, @grid_size, @grid_size)rect.x = (x - @draw_range_begin.x) * @grid_sizerect.y = (y - @draw_range_begin.y) * @grid_sizeflag = @passage_table[x, y]if flag & 0x01 == 0 # 下通行不能rect.height -= 1endif flag & 0x02 == 0 # 左通行不能rect.x += 1rect.width -= 1endif flag & 0x04 == 0 # 右通行不能rect.width -= 1endif flag & 0x08 == 0 # 上通行不能rect.y += 1rect.height -= 1endbitmap.fill_rect(rect, KMS_MiniMap::FOREGROUND_COLOR)}}end#--------------------------------------------------------------------------# ○ 移動イベントの描画#--------------------------------------------------------------------------def draw_map_move_event(bitmap)rect = Rect.new(0, 0, @grid_size, @grid_size)@move_events.each { |e|rect.x = (e.x - @draw_range_begin.x) * @grid_sizerect.y = (e.y - @draw_range_begin.y) * @grid_sizebitmap.fill_rect(rect, KMS_MiniMap::MOVE_EVENT_COLOR)}end#--------------------------------------------------------------------------# ○ アニメーション更新#--------------------------------------------------------------------------def update_animationif @showing# フェードインself.opacity += 16if opacity == 255@showing = falseendelsif @hiding# フェードアウトself.opacity -= 16if opacity == 0@hiding = falseendendend#--------------------------------------------------------------------------# ○ オブジェクト描画#--------------------------------------------------------------------------def draw_object# 下準備bitmap = @object_sprite.bitmapbitmap.clearrect = Rect.new(0, 0, @grid_size, @grid_size)# オブジェクト描画@object_list.each { |obj|next unless in_draw_range?(obj.x, obj.y)color = KMS_MiniMap::OBJECT_COLOR[obj.minimap_object_type - 1]next if color.nil?rect.x = (obj.real_x - @draw_range_begin.x) * @grid_sizerect.y = (obj.real_y - @draw_range_begin.y) * @grid_sizebitmap.fill_rect(rect, color)}# 乗り物描画$game_map.vehicles.each { |vehicle|next if vehicle.transparentrect.x = (vehicle.real_x - @draw_range_begin.x) * @grid_sizerect.y = (vehicle.real_y - @draw_range_begin.y) * @grid_sizebitmap.fill_rect(rect, KMS_MiniMap::VEHICLE_COLOR)}end#--------------------------------------------------------------------------# ○ 更新#--------------------------------------------------------------------------def updateupdate_inputreturn unless need_update?update_draw_rangeupdate_positionupdate_animationdraw_object@map_sprite.update@object_sprite.update@position_sprite.updateend#--------------------------------------------------------------------------# ○ 更新判定#--------------------------------------------------------------------------def need_update?return (visible && opacity > 0) || @showing || @hidingendend#==============================================================================# □ Sprite_MiniMapIcon#------------------------------------------------------------------------------# ミニマップ用アイコンのクラスです。#==============================================================================class Sprite_MiniMapIcon < SpriteDURATION_MAX = 60#--------------------------------------------------------------------------# ● オブジェクト初期化# viewport : ビューポート#--------------------------------------------------------------------------def initialize(viewport = nil)super(viewport)@duration = DURATION_MAX / 2end#--------------------------------------------------------------------------# ● フレーム更新#--------------------------------------------------------------------------def updatesuper@duration += 1if @duration == DURATION_MAX@duration = 0endupdate_effectend#--------------------------------------------------------------------------# ○ エフェクトの更新#--------------------------------------------------------------------------def update_effectself.color.set(255, 255, 255,(@duration - DURATION_MAX / 2).abs * KMS_MiniMap::BLINK_LEVEL)endend#==============================================================================# ■ Spriteset_Map#==============================================================================class Spriteset_Mapattr_reader :minimap#--------------------------------------------------------------------------# ● オブジェクト初期化#--------------------------------------------------------------------------alias initialize_KMS_MiniMap initializedef initializeinitialize_KMS_MiniMapcreate_minimapend#--------------------------------------------------------------------------# ○ ミニマップの作成#--------------------------------------------------------------------------def create_minimap@minimap = Game_MiniMap.new(@tilemap)@minimap.visible = $game_system.minimap_show && $game_map.minimap_show?end#--------------------------------------------------------------------------# ● 解放#--------------------------------------------------------------------------alias dispose_KMS_MiniMap disposedef disposedispose_KMS_MiniMapdispose_minimapend#--------------------------------------------------------------------------# ○ ミニマップの解放#--------------------------------------------------------------------------def dispose_minimap@minimap.dispose@minimap = nilend#--------------------------------------------------------------------------# ● フレーム更新#--------------------------------------------------------------------------alias update_KMS_MiniMap updatedef updateupdate_KMS_MiniMapupdate_minimapend#--------------------------------------------------------------------------# ○ ミニマップ更新#--------------------------------------------------------------------------def minimap_show?return $game_map.minimap_show? && $game_system.minimap_showend#--------------------------------------------------------------------------# ○ ミニマップ更新#--------------------------------------------------------------------------def update_minimapreturn if @minimap.nil?# 表示切替if minimap_show?@minimap.visible = trueelse@minimap.visible = falsereturnend# フェード判定case $game_map.minimap_fadewhen Game_Map::MINIMAP_FADE_IN@minimap.fadein$game_map.minimap_fade = Game_Map::MINIMAP_FADE_NONEwhen Game_Map::MINIMAP_FADE_OUT@minimap.fadeout$game_map.minimap_fade = Game_Map::MINIMAP_FADE_NONEend@minimap.updateend#--------------------------------------------------------------------------# ○ ミニマップ全体をリフレッシュ#--------------------------------------------------------------------------def refresh_minimapreturn if @minimap.nil?@minimap.clear_passage_table_cache@minimap.refreshend#--------------------------------------------------------------------------# ○ ミニマップのオブジェクトを更新#--------------------------------------------------------------------------def update_minimap_object@minimap.update_object_list unless @minimap.nil?endend#==============================================================================# ■ Scene_Map#==============================================================================class Scene_Map#--------------------------------------------------------------------------# ● 場所移動後の処理#--------------------------------------------------------------------------alias post_transfer_KMS_MiniMap post_transferdef post_transferrefresh_minimappost_transfer_KMS_MiniMapend#--------------------------------------------------------------------------# ○ ミニマップ全体をリフレッシュ#--------------------------------------------------------------------------def refresh_minimap@spriteset.refresh_minimap unless @spriteset.nil?end#--------------------------------------------------------------------------# ○ ミニマップのオブジェクトを更新#--------------------------------------------------------------------------def update_minimap_object@spriteset.update_minimap_object unless @spriteset.nil?endend
Crime
in Progetti
Inviato · Report reply
Ecco un altro nuovo Screen
PS: Ghost ecco la sorpresa in questo Screen c'è l'arma più rara del gioco il Fucile a Canne Mozze D'oro