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

Project1

 找回密码
 注册会员
搜索

如何判断地图名字是否带#

查看数: 2556 | 评论数: 4 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2018-9-11 15:51

正文摘要:

想法源于论坛搜到的一个地图名显示脚本,感觉不错 但想修改一些,应该在79行 自己脚本很差,所以来请教下。。 这个我想加一个判断,如果地图名字有#,就显示横线和英文部分,否则不显示这部分 (如果不做修改,地 ...

回复

ppspssss 发表于 2018-9-13 11:03:58
本帖最后由 ppspssss 于 2018-9-13 11:09 编辑

$mapnames = load_data("Data/MapInfos.rxdata") #读取地图名文件
if  ( $mapnames[@id].name =~ /^game_variables/ ) #匹配game_variables , "^"开头开始算

#def版
def map_name
   return load_data('Data/MapInfos.rxdata')[@map_id].name
end


if  ( $game_map.map_name =~ /^game_variables/ )
#功能應該一样吧没試过
阮声悠悠 发表于 2018-9-11 19:24:30
。。。经过搜索,自己也发现了一个方法
  1. if $data_mapinfos[@id].name.include?("#") == false
  2.     self.contents.font.size = 15
  3.     self.contents.draw_text(4, 0 , width - 40, 10, "------------------------", 1)
  4.     self.contents.font.size = 22
  5.     self.contents.draw_text(4, 0 , width - 40, 42, $data_mapinfos[@id].name.split(/#/)[0], 1)
  6.     self.contents.font.size = 15
  7.     self.contents.draw_text(4, 0 , width - 40, 72, "------------------------", 1)
  8. else
  9.     self.contents.font.size = 22
  10.     self.contents.draw_text(4, 0 , width - 40, 32, $data_mapinfos[@id].name.split(/#/)[0], 1)
  11.     self.contents.font.size = 15
  12.     self.contents.draw_text(4, 0 , width - 40, 62, "------------------------", 1)
  13.     self.contents.draw_text(4, 0 , width - 40, 81, $data_mapinfos[@id].name.split(/#/)[1], 1)
  14. end
复制代码
guoxiaomi 发表于 2018-9-11 16:30:23
RUBY 代码复制
  1. name1, name2 = $data_mapinfos[@id].name.split('#', 2)
  2. if name2
  3.     self.contents.font.size = 22
  4.     self.contents.draw_text(4, 0 , width - 40, 32, name1, 1)
  5.     self.contents.font.size = 15
  6.     self.contents.draw_text(4, 0 , width - 40, 62, "------------------------", 1)
  7.     self.contents.draw_text(4, 0 , width - 40, 81, name2, 1)
  8. end

点评

有点看不懂,哈哈。  发表于 2018-9-11 19:26
soulsaga 发表于 2018-9-11 16:29:40
本帖最后由 soulsaga 于 2018-9-11 16:33 编辑

self.contents.draw_text(4, 0 , width - 40, 81, $data_mapinfos[@id].name.split(/#/)[1], 1) if $data_mapinfos[@id].name =~ "#"

点评

OK,可能是之后的版本移除了吧……  发表于 2018-9-12 00:19
测试过..字符串没问题..  发表于 2018-9-11 16:36
但我就是这样用的..  发表于 2018-9-11 16:34
=~ 应该不能接普通的字符串,后面要是正则表达式 /\#/  发表于 2018-9-11 16:31
拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

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

GMT+8, 2024-11-23 10:30

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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