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

Project1

 找回密码
 注册会员
搜索
查看: 3968|回复: 2
打印 上一主题 下一主题

[已经解决] 如何在地图左上角显示 地图名和 坐标XY

[复制链接]

Lv1.梦旅人

阿飞

梦石
0
星屑
68
在线时间
232 小时
注册时间
2010-8-27
帖子
855
跳转到指定楼层
1
发表于 2014-8-5 18:36:35 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
图样是个椭圆样的   效果图如图

QQ图片20140805183513.jpg (68.83 KB, 下载次数: 37)

QQ图片20140805183513.jpg

Lv3.寻梦者 (版主)

…あたしは天使なんかじゃないわ

梦石
0
星屑
2208
在线时间
4033 小时
注册时间
2010-10-4
帖子
10779

开拓者贵宾

2
发表于 2014-8-5 19:35:08 | 只看该作者
本帖最后由 taroxd 于 2014-8-5 20:14 编辑

调坐标这种事情自己去干,在40~42行
23号开关开启时启用效果。开关ID在脚本第36行设置
默认效果如图:
@Cache  

RUBY 代码复制
  1. module Cache
  2.   @cache ||= {}
  3.   def self.ellipse(a, b, color)
  4.     key = [:ellipse, a, b, color]
  5.     unless include?(key)
  6.       @cache[key] = bitmap = Bitmap.new(2 * a, 2 * b)
  7.       0.step(2*Math::PI, 0.01) do |theta|
  8.         bitmap.set_pixel((a+a*Math.cos(theta)).to_i,
  9.           (b+b*Math.sin(theta)).to_i, color)
  10.       end
  11.     end
  12.     @cache[key]
  13.   end
  14. end
  15.  
  16. class Spriteset_Map
  17.   alias cs_20140805 create_shadow
  18.   def create_shadow
  19.     cs_20140805
  20.     @ellipse_sprite = Sprite.new
  21.     a, b, c = 50, 40, Color.new(255,0,0)
  22.     @ellipse_sprite.bitmap = Cache.ellipse(a,b,c).clone
  23.     @ellipse_sprite.bitmap.fill_rect(0, b, 2*a, 1, c)
  24.     @mapinfo_sprite = Sprite.new
  25.     @mapinfo_sprite.bitmap = Bitmap.new(2*a, 2*b)
  26.     @mapinfo_sprite.bitmap.font.size = 16
  27.     @ellipse_sprite.x = 10
  28.     @ellipse_sprite.y = 10
  29.     @mapinfo_sprite.x = 10
  30.     @mapinfo_sprite.y = 10
  31.   end
  32.  
  33.   alias us_20140805 update_shadow
  34.   def update_shadow
  35.     us_20140805
  36.     @mapinfo_sprite.visible = @ellipse_sprite.visible = $game_switches[23]
  37.     if @mapinfo_to_draw != mapinfo_to_draw
  38.       n, x, y = @mapinfo_to_draw = mapinfo_to_draw
  39.       text = "X:#{x} Y:#{y}"
  40.       b = @mapinfo_sprite.bitmap
  41.       b.clear
  42.       b.draw_text(0,20,b.width,20,n,1)
  43.       b.draw_text(0,40,b.width,20,text,1)
  44.     end
  45.   end
  46.  
  47.   alias ds_20140805 dispose_shadow
  48.   def dispose_shadow
  49.     ds_20140805
  50.     @ellipse_sprite.bitmap.dispose
  51.     @ellipse_sprite.dispose
  52.     @mapinfo_sprite.bitmap.dispose
  53.     @mapinfo_sprite.dispose
  54.   end
  55.  
  56.   def mapinfo_to_draw
  57.     [$game_map.display_name, $game_player.x, $game_player.y]
  58.   end
  59. end
      

点评

原来如此  发表于 2014-8-5 21:08
地图名显示的是地图的“显示名称”,你确定不是空的吗?  发表于 2014-8-5 21:00
这个我知道 坐标都显示了 , 地图名没显示  发表于 2014-8-5 20:57
23号开关开启时启用效果。开关ID在脚本第36行设置  发表于 2014-8-5 20:42
为什么我的没有显示地图名字  发表于 2014-8-5 20:40

评分

参与人数 1梦石 +1 收起 理由
VIPArcher + 1 @Cache

查看全部评分

回复 支持 反对

使用道具 举报

Lv4.逐梦者 (版主)

百合控

梦石
0
星屑
6643
在线时间
1275 小时
注册时间
2013-8-21
帖子
3657

开拓者

3
发表于 2014-8-5 19:41:01 | 只看该作者
本帖最后由 余烬之中 于 2014-8-5 19:45 编辑

使用方法
把下面的脚本安装好,然后在Graphics/System下放一个图片 名字可以自己调整 默认为"Mapname"
脚本会用这个图片做背景 在上面绘制文字
可以设置一个键 当按下这个键的时候 会显示/隐藏地图名显示
图片示例

基本格式是这样:上面一块会居中描绘地图名 下面一块居中描绘坐标(以"(X, Y)"的形式)
中间的分隔线 宽度为2px
此外对图片的宽度、高度没有要求 推荐宽度在150左右 高度在60左右
你想要的椭圆就要你自己画了 毕竟我不知道你喜欢怎样的椭圆 画丑了你也不满意的
脚本

点评

你可以自己去掉……图片是完全自定义的  发表于 2014-8-5 20:17
这个有背景颜色  发表于 2014-8-5 20:10

评分

参与人数 2星屑 +1 梦石 +2 收起 理由
VIPArcher + 1 @src
taroxd + 1 + 1 @src

查看全部评分

萌新瑟瑟发抖
看到我请叫我去干活
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

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

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

GMT+8, 2024-11-10 15:03

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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