- 累计送礼:
- 0 个
- 累计收礼:
- 0 个
TA的每日心情 | 开心 昨天 18:01 |
---|
签到天数: 114 天 连续签到: 4 天 [LV.6]常住居民II

管理员
  
- VIP
- 6
- 卡币
- 10632
- OK点
- 16
- 推广点
- 0
- 同能卷
- 0
- 积分
- 13401


|
- #==============================================================================# ■ 【ISA】敌人名字显示 - Monster Name Display#------------------------------------------------------------------------------# - 2011.2.19# 初始化 忧雪の伤# - 2011.2.20# 更新 忧雪の伤# - 2011.2.25# 更新 忧雪の伤# - 2011.2.26# 更新 忧雪の伤#______________________________________________________________________________# # 追加敌人战斗中名字的显示。##==============================================================================#==============================================================================# ★ 设定部分 ★#==============================================================================module ISA # 功能开关 MND = true # 字体名称 MND_FONT_NAME = ["黑体"] # 字体大小 MND_FONT_SIZE = 16 # 字体颜色 MND_FONT_COLOR = Color.new(255, 255, 255, 255) # 字体描边 MND_FONT_SHADOW = true # 字体描边颜色 MND_FONT_SHADOW_COLOR = Color.new(-255, -255, -255, 255) # 字体粗体 MND_FONT_BOLD = true # 字体斜体 MND_FONT_ITALIC = false # X坐标修正 MND_X_PLUS = -80 # Y坐标修正 MND_Y_PLUS = -60 # 透明度设定 MND_WINDOW_OPACITY = 0end#★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★# 注册【ISA】$ISA = {} if $ISA == nil$ISA["MND"] = true#★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★ #==============================================================================# ■ ISA_Window_Enemy_Name#------------------------------------------------------------------------------# 显示战斗画面敌人名字的窗口。#==============================================================================class ISA_Window_Enemy_Name < Window_Base #-------------------------------------------------------------------------- # ● 初始化对像 #-------------------------------------------------------------------------- def initialize(x, y, id) super(0, 0, 160, 64) # 创建描绘区域 self.contents = Bitmap.new(width - 32, height - 32) # 读取透明度 self.opacity = ISA::MND_WINDOW_OPACITY # 坐标修正 self.x = x + ISA::MND_X_PLUS self.y = y + ISA::MND_Y_PLUS # 代入id @id = id refresh end #-------------------------------------------------------------------------- # ● 刷新 #-------------------------------------------------------------------------- def refresh self.contents.clear # 读取敌人 @enemy = $game_troop.enemies[@id] # 读取名字 text = @enemy.name # 读取字体设定 self.contents.font.name = ISA::MND_FONT_NAME self.contents.font.size = ISA::MND_FONT_SIZE self.contents.font.bold = ISA::MND_FONT_BOLD self.contents.font.italic = ISA::MND_FONT_ITALIC # 描边部分 if ISA::MND_FONT_SHADOW == true # 读取描边色 self.contents.font.color = ISA::MND_FONT_SHADOW_COLOR # 同时向八个方向扩展描绘 self.contents.draw_text(1, 0, self.width - 32, self.height - 32, text,1) if ISA::MND self.contents.draw_text(0, 1, self.width - 32, self.height - 32, text,1) if ISA::MND self.contents.draw_text(-1, 0, self.width - 32, self.height - 32, text,1) if ISA::MND self.contents.draw_text(0, -1, self.width - 32, self.height - 32, text,1) if ISA::MND self.contents.draw_text(1, 1, self.width - 32, self.height - 32, text,1) if ISA::MND self.contents.draw_text(-1, -1, self.width - 32, self.height - 32, text,1) if ISA::MND self.contents.draw_text(1, -1, self.width - 32, self.height - 32, text,1) if ISA::MND self.contents.draw_text(-1, 1, self.width - 32, self.height - 32, text,1) if ISA::MND end # 主要部分 self.contents.font.color = ISA::MND_FONT_COLOR self.contents.draw_text(0, 0, self.width - 32, self.height - 32, text,1) if ISA::MND endend #==============================================================================# ■ Scene_Battle #------------------------------------------------------------------------------# 处理战斗画面的类。#==============================================================================class Scene_Battle #-------------------------------------------------------------------------- # ● 主处理 #-------------------------------------------------------------------------- alias old_main main def main # 声明别名 # 准备队伍 @troop_id = $game_temp.battle_troop_id $game_troop.setup(@troop_id) # 生成数组 @ISA_Enemy_Name_window = [] for i in 0...$game_troop.enemies.size # 获取敌人 @enemy = $game_troop.enemies[i] # 读取画面X、Y坐标 actor_x = @enemy.screen_x actor_y = @enemy.screen_y # 生成窗口 @ISA_Enemy_Name_window[i] = ISA_Window_Enemy_Name.new(actor_x, actor_y, @enemy.id) @ISA_Enemy_Name_window[i].visible = true @ISA_Enemy_Name_window[i].z -= 101 # => p @ISA_Enemy_Name_window[i].z end # 调用其他 old_main end #-------------------------------------------------------------------------- # ● 刷新画面 #-------------------------------------------------------------------------- alias old_update update def update # 全员死亡或者不存在队员的场合 if $game_party.all_dead? or $game_party.actors.size == 0 for i in 0...$game_troop.enemies.size # 判断关闭 @ISA_Enemy_Name_window[i].visible = false end end # 调用其他 old_update end #-------------------------------------------------------------------------- # ● 战斗结束 # result : 結果 (0:胜利 1:失败 2:逃跑) #-------------------------------------------------------------------------- alias old_battle_end battle_end def battle_end(result) # 声明别名 for i in 0...$game_troop.enemies.size # 判断关闭 @ISA_Enemy_Name_window[i].visible = false end # 调用其他 old_battle_end(result) end #-------------------------------------------------------------------------- # ● 刷新画面 (主回合步骤 6 : 刷新) #-------------------------------------------------------------------------- alias old_update_phase4_step6 update_phase4_step6 def update_phase4_step6 # 声明别名 for i in 0...$game_troop.enemies.size # 获取敌人 @enemy = $game_troop.enemies[i] if @enemy.hp0? # 判断关闭 @ISA_Enemy_Name_window[i].visible = false end end # 调用其他 old_update_phase4_step6 endend复制代码
复制代码
截图:
本帖来自P1论坛作者忧雪の伤,因Project1站服务器在国外有时候访问缓慢不方便作者交流学习,经联系P1站长fux2同意署名转载一起分享游戏制作经验,共同为国内独立游戏作者共同创造良好交流环境,原文地址: https://rpg.blue/forum.php?mod=viewthread&tid=168073 若有侵权,发帖作者可联系底部站长QQ在线咨询功能删除,谢谢。 |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
|