设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索

主角和事件接触的时候就会弹出一个窗口显示地名

查看数: 459 | 评论数: 2 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2024-7-21 19:58

正文摘要:

我画的地图很大,有很多小房间,我想在进入这些房间时接触一个事件然后就能显示这个小房间的名字 $little_map_name = "办公室" Window_Littlemap.new.newtest复制代码 如下所示,第一次调用窗口是一闪而过,第二次就是 ...

回复

yangonever 发表于 2024-7-21 22:07:07
灯笼菜刀王 发表于 2024-7-21 22:04
原因是没有指针,被内存自动刷掉了, 给你稍微修改了下, 把脚本塞到main前面

使用方法,   事件脚本调用:    ...

谢谢大佬,我研究一下
灯笼菜刀王 发表于 2024-7-21 22:04:29
原因是没有指针,被内存自动刷掉了, 给你稍微修改了下, 把脚本塞到main前面

使用方法,   事件脚本调用:   地名"休息室"     , 要关闭则调用 地名(nil)

  1. class Window_Littlemap < Window_Base
  2.   #初始化
  3.   def initialize
  4.     super(0, 0, 160, 64)
  5.     self.contents = Bitmap.new(width - 32, height - 32 )
  6.     self.back_opacity = 240
  7.     self.opacity = 240
  8.     self.contents_opacity = 240
  9.     refresh
  10.   end
  11.   #刷新
  12.   def refresh
  13.     return if !(self.visible = ((a=$game_system.little_map_name) != nil))
  14.     self.contents.clear
  15.     self.contents.font.color = system_color
  16.     self.contents.draw_text(0, 0, width - 32, 32, a ,1)
  17.   end
  18. end

  19. class Game_System
  20.   attr_accessor :little_map_name
  21. end

  22. class Scene_Map
  23.   attr_reader :littemap
  24.   alias old_main main
  25.   def main
  26.     @littemap = Window_Littlemap.new
  27.     old_main
  28.     @littemap.dispose
  29.   end
  30. end

  31. class Interpreter
  32.   def 地名(name)
  33.     $game_system.little_map_name = name
  34.     $scene.littemap.refresh if $scene.is_a?(Scene_Map)
  35.   end
  36. end
复制代码

评分

参与人数 1+1 收起 理由
yangonever + 1 认可答案

查看全部评分

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-25 00:38

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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