扫描二维码关注官方公众号
返回列表
+ 发新帖
查看: 212|回复: 0

[转载发布] 【非原创】地图名显示美化 XP版

[复制链接]
累计送礼:
0 个
累计收礼:
0 个
  • TA的每日心情
    开心
    2025-4-27 05:27
  • 签到天数: 128 天

    连续签到: 1 天

    [LV.7]常住居民III

    2358

    主题

    429

    回帖

    1万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    VIP
    6
    卡币
    11525
    OK点
    16
    推广点
    0
    同能卷
    0
    积分
    14340

    灌水之王

    发表于 2024-4-20 00:02:08 | 显示全部楼层 |阅读模式
    脚本非原创,创意非原创,只是在论坛里搜索这个美化貌似没有XP的,于是自己动手改了改。不多说






    将地图名称设置成两部分,以“#”隔开,前面的部分显示在上面,后面的部分显示在下面。


    顺便补充一下,好像和“字体描边”配合一下才好看一点
    1. # ————————————————————————————————————# 本脚本来自[url]http://www.66rpg.com/[/url],转载自[url]http://www.phylomortis.com/[/url],转载请保留此信息# ————————————————————————————————————#==============================================================================# ■ Window_MapName#------------------------------------------------------------------------------#  显示地图名字的窗口。#==============================================================================class Window_MapName < Window_Base  #--------------------------------------------------------------------------  # ● 类常量定义  #--------------------------------------------------------------------------  # 窗口位置设定  NAME_X = 210                  # 矩形左上顶点X坐标  NAME_Y = 180             # 矩形左上顶点Y坐标  NAME_W = 220          # 矩形宽  NAME_H = 80           # 矩形高    # 显示时间设置  SHOW_TIME_0 = 10  # 地图名出现前等待的帧数  SHOW_TIME_1 = 10  # 地图名从不可见变成可见的帧数  SHOW_TIME_2 = 34  # 地图名完全可见的帧数  SHOW_TIME_3 = 16  # 地图名从可见变成不可见的帧数    # 完全可见时的透明度设置  OPACITY_1 = 0   # 边框  OPACITY_2 = 0   # 背景  OPACITY_3 = 255   # 文字    # 地图名字的颜色  TEXT_COLOR = Color.new(255, 255, 255, 255)     #--------------------------------------------------------------------------  # ● 初始化状态  #--------------------------------------------------------------------------  def initialize    super(NAME_X , NAME_Y, NAME_W, NAME_H)    # 初始化窗口透明度    self.opacity = 0    self.back_opacity = 0    self.contents_opacity = 0    self.contents = Bitmap.new(width - 32, height - 32)    # 剩余帧数初始化    @show_time = 0  end  #--------------------------------------------------------------------------  # ● 输出文字  #--------------------------------------------------------------------------  def setname    # 获取地图ID    newid = $game_map.map_id    time = SHOW_TIME_1 + SHOW_TIME_2 + SHOW_TIME_3    # 如果现在的地图的ID不是刚才显示的地图ID则开始显示    if newid != @id      @id = newid      @show_time = SHOW_TIME_0 + SHOW_TIME_1 + SHOW_TIME_2 + SHOW_TIME_3    # 剩余帧数为0是时,全部窗口透明    elsif @show_time < 1      self.opacity = 0      self.back_opacity = 0      self.contents_opacity = 0      return    end        self.contents.clear    self.contents.font.color = TEXT_COLOR    # 描绘地图名        self.contents.font.size = 22    self.contents.draw_text(4, 0 , width - 40, 32, $data_mapinfos[@id].name.split(/#/)[0], 1)    self.contents.font.size = 15    self.contents.draw_text(4, 0 , width - 40, 62, "------------------------", 1)    self.contents.draw_text(4, 0 , width - 40, 81, $data_mapinfos[@id].name.split(/#/)[1], 1)        # 根本帧数设定窗口透明度    if @show_time > (SHOW_TIME_2 + SHOW_TIME_3)      self.opacity = @show_time < time ? (((OPACITY_1 / SHOW_TIME_1) * (time - @show_time)).to_i) : 0      self.back_opacity = @show_time < time ? (((OPACITY_2 / SHOW_TIME_1 )* (time - @show_time)).to_i) : 0      self.contents_opacity = @show_time < time ? (((OPACITY_3 / SHOW_TIME_1) * (time - @show_time)).to_i) : 0    else      self.opacity = @show_time < (SHOW_TIME_3 / 16 * 14) ? ((OPACITY_1 / SHOW_TIME_3) * @show_time).to_i : OPACITY_1      self.back_opacity = @show_time < (SHOW_TIME_3 / 16 * 9) ? ((OPACITY_2 / SHOW_TIME_3) * @show_time).to_i : OPACITY_2      self.contents_opacity = @show_time < SHOW_TIME_3 ? ((OPACITY_3 / SHOW_TIME_3)* @show_time).to_i : OPACITY_3    end        @show_time -= 1  endend#==============================================================================# ■ Scene_Map#------------------------------------------------------------------------------#  处理地图画面的类。(追加定义)#==============================================================================class Scene_Map  alias smn_main main  def main    @mapname = Window_MapName.new    smn_main    @mapname.dispose  end    alias smn_update update  def update    @mapname.setname    smn_update  endend#==============================================================================# ■ Scene_Title#------------------------------------------------------------------------------#  处理标题画面的类。(追加定义)#==============================================================================class Scene_Title  alias smn_main main  def main    # 读取地图信息文件    $data_mapinfos = load_data("Data/MapInfos.rxdata")    smn_main  endend复制代码
    复制代码
                 本帖来自P1论坛作者mmmkly,因Project1站服务器在国外有时候访问缓慢不方便作者交流学习,经联系P1站长fux2同意署名转载一起分享游戏制作经验,共同为国内独立游戏作者共同创造良好交流环境,原文地址:https://rpg.blue/forum.php?mod=viewthread&tid=256357  若有侵权,发帖作者可联系底部站长QQ在线咨询功能删除,谢谢。

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有账号?立即注册

    x
    天天去同能,天天有童年!
    回复 送礼论坛版权

    使用道具 举报

    文明发言,和谐互动
    文明发言,和谐互动
    高级模式
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    关闭

    幸运抽奖

    社区每日抽奖来袭,快来试试你是欧皇还是非酋~

    立即查看

    聊天机器人
    Loading...

    QQ|Archiver|手机版|小黑屋|同能RPG制作大师 ( 沪ICP备12027754号-3 )

    GMT+8, 2025-5-5 15:28 , Processed in 0.140359 second(s), 58 queries .

    Powered by Discuz! X3.4

    Copyright © 2001-2020, Tencent Cloud.

    快速回复 返回顶部 返回列表