查看: 2690|回复: 10

[已经过期] Vocab的模组该如何实现转移符的使用?

[复制链接]
梦石
0
星屑
8498
在线时间
775 小时
注册时间
2017-11-10
回帖
1074
发表于 2018-2-16 12:52:27 | 显示全部楼层 |阅读模式

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

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

×
起源:https://rpg.blue/thread-405279-1-1.html
我想在Vocab的模组里。
特定的文字用特别的文字颜色描绘。
但发现实际的效果无法实现。
那需要修改什么脚本或者添加脚本功能呢?

[pre lang="ruby"]#==============================================================================
# ** Vocab
#------------------------------------------------------------------------------
#  這個模組定義了介面用語和互動消息的顯示內容。
#  它將一些資訊定義為常量,而資料庫裡的用語資料讀取自 $data_system 欄位。
#==============================================================================

module Vocab

  # 交易介面
  ShopBuy         = "購入"
  ShopSell        = "售出"
  ShopCancel      = "放棄"
  Possession      = "擁有量"

  # 狀態介面
  ExpTotal        = "當前經驗值"
  ExpNext         = "%s提升所欠經驗值"

  # 進度檔案管理介面
  SaveMessage     = "請問您要把進度保存到第幾個檔位?"
  LoadMessage     = "請問您要從第幾個檔位元讀取進度?"
  File            = "檔位"

  # 在隊伍裡有多人時顯示的訊息
  PartyName       = "%s一行人"

  # 基本戰鬥訊息
  Emerge          = "%s現身。"
  Preemptive      = "%s佔據上風。"
  Surprise        = "%s被偷襲。"
  EscapeStart     = "%s準備撤退。"
  EscapeFailure   = "然而,撤退是徒勞的。"

  # 戰鬥結束訊息
  Victory         = "%s得勝。"
  Defeat          = "%s戰敗。"
  ObtainExp       = "獲得%s點EXP。"
  ObtainGold      = "%s%s已獲得。"
  ObtainItem      = "%s被發現。"
  LevelUp         = "%s%s提升為%s。"
  ObtainSkill     = "%s已經習得。"

  # 戰鬥指令
  DoAttack        = "%s發動攻擊。"
  DoGuard         = "%s防禦中。"
  DoEscape        = "%s撤退了。"
  DoWait          = "%s等待中。"
  UseItem         = "%s使用了%s。"

  # 暴擊
  CriticalToEnemy = "狂暴攻擊!!"
  CriticalToActor = "熱血痛擊!!"

  # 主角的行動結果
    # 友情提示: %1$s 代表主角[下一段這個標幟表示為敵人角色]
    #            %2$s 代表HP/MP
    #            %3$s 代表點數,也就是HP/MP的值
  ActorDamage     = "%s受到了%s點傷害。"
  ActorLoss       = "%1$s失去了%3$s點%2$s。"
  ActorDrain      = "%1$s被吸走了%3$s點%2$s。"
  ActorNoDamage   = "%s沒有受到任何傷害。"
  ActorNoHit      = "落空!%s沒有受到任何傷害。"
  ActorEvasion    = "%s躲過了攻擊。"
  ActorRecovery   = "%1$s恢復了%3$s點%2$s。"

  # 敵人角色的行動結果
  EnemyDamage     = "%s受到了%s點傷害。"
  EnemyLoss       = "%1$s失去了%3$s點%2$s。"
  EnemyDrain      = "%1$s被吸走了%3$s點%2$s。"
  EnemyNoDamage   = "%s沒有受到任何傷害。"
  EnemyNoHit      = "落空!%s沒有受到任何傷害。"
  EnemyEvasion    = "%s躲過了攻擊。"
  EnemyRecovery   = "%1$s恢復了%3$s點%2$s。"

  # 物品和非實體攻擊類技能使用無效
  ActionFailure   = "%s沒有受到任何影響。"

  # 等級
  def self.level
    return $data_system.terms.level
  end

  # 等級 (縮寫)
  def self.level_a
    return $data_system.terms.level_a
  end

  # HP
  def self.hp
    return $data_system.terms.hp
  end

  # HP (縮寫)
  def self.hp_a
    return $data_system.terms.hp_a
  end

  # MP
  def self.mp
    return $data_system.terms.mp
  end

  # MP (縮寫)
  def self.mp_a
    return $data_system.terms.mp_a
  end

  # 攻擊力
  def self.atk
    return $data_system.terms.atk
  end

  # 防禦力
  def self.def
    return $data_system.terms.def
  end

  # 意志力
  def self.spi
    return $data_system.terms.spi
  end

  # 敏捷力
  def self.agi
    return $data_system.terms.agi
  end

  # 武器
  def self.weapon
    return $data_system.terms.weapon
  end

  # 盾
  def self.armor1
    return $data_system.terms.armor1
  end

  # 頭戴
  def self.armor2
    return $data_system.terms.armor2
  end

  # 身穿
  def self.armor3
    return $data_system.terms.armor3
  end

  # 佩戴
  def self.armor4
    return $data_system.terms.armor4
  end

  # 左手
  def self.weapon1
    return $data_system.terms.weapon1
  end

  # 右手
  def self.weapon2
    return $data_system.terms.weapon2
  end

  # 攻擊
  def self.attack
    return $data_system.terms.attack
  end

  # 技能
  def self.skill
    return $data_system.terms.skill
  end

  # 防禦
  def self.guard
    return $data_system.terms.guard
  end

  # 用品
  def self.item
    return $data_system.terms.item
  end

  # 整備
  def self.equip
    return $data_system.terms.equip
  end

  # 狀態
  def self.status
    return $data_system.terms.status
  end

  # 存檔
  def self.save
    return $data_system.terms.save
  end

  # 結束遊戲
  def self.game_end
    return $data_system.terms.game_end
  end

  # 戰鬥
  def self.fight
    return $data_system.terms.fight
  end

  # 撤退
  def self.escape
    return $data_system.terms.escape
  end

  # 新的劇情
  def self.new_game
    return $data_system.terms.new_game
  end

  # 讀取存檔
  def self.continue
    return $data_system.terms.continue
  end

  # 退出遊戲
  def self.shutdown
    return $data_system.terms.shutdown
  end

  # 返回標題畫面
  def self.to_title
    return $data_system.terms.to_title
  end

  # 取消
  def self.cancel
    return $data_system.terms.cancel
  end

  # G (貨幣單位)
  def self.gold
    return $data_system.terms.gold
  end

end
[/pre]
一个只会简单事件的Rm新人,脚本完全不懂。只求做个简单的游戏完成自己的游戏之梦而已。
第一个游戏已经完成,等待各素材的完成和测试。
梦石
0
星屑
19426
在线时间
3082 小时
注册时间
2013-1-11
回帖
1207
发表于 2018-2-16 20:55:19 | 显示全部楼层
使用\C[X],在引用的时候分割字符绘制,和对话框一样

点评

你可以看一下默认的对话框脚本怎么写的  发表于 2018-2-16 21:03
就是不能用draw_text直接绘制全部文本,要一个一个去绘制。比如默认的对话框将\C替换成\x00,那么就是"你\x00好",根据指定的字符更改颜色什么的。   发表于 2018-2-16 21:02
“分割字符绘制”是什么意思?  发表于 2018-2-16 20:57
回复

使用道具 举报

梦石
0
星屑
17043
在线时间
6058 小时
注册时间
2011-7-18
回帖
152

开拓者

发表于 2018-2-16 21:21:12 | 显示全部楼层
调用Vocab的地方有很多,比如战斗信息就有使用,那个就是可以使用转义符的
没有具体位置的话不太好具体回答,不过大体上就是把draw_text改成draw_text_ex就行了

点评

明白了,感谢前辈。效果已经实现了。  发表于 2018-2-17 14:16
首先答案是可以的。不过正如我所说默认系统有些地方能识别并应用这些转义符,而有些地方不能。 同样双引号的情况下斜杠要双写。  发表于 2018-2-17 01:29
嗯,问题是我想要Vocab内直接使用转义符,不知道可行不?  发表于 2018-2-16 23:46
这里岚风·雷,任饭、PM理性粉、UT/DR原作粉、(Trans)Furry自萌,半吊子技术一枚_(:з」∠)_    游戏制作交流工(liao)作(tian)室欢迎来玩!
【无偿/有偿】RGSS3(VA)脚本定制 + 合作招募/同好交友    修正Firefox/火狐浏览器的代码框复制问题(油猴脚本)
Click→←Click
回复

使用道具 举报

梦石
0
星屑
8498
在线时间
775 小时
注册时间
2017-11-10
回帖
1074
 楼主| 发表于 2018-2-16 23:45:49 | 显示全部楼层
本帖最后由 文雅夕露 于 2018-2-17 00:01 编辑
张咚咚 发表于 2018-2-16 20:55
使用\C[X],在引用的时候分割字符绘制,和对话框一样


前辈的意思我大致了解了。
谢谢指导。
但其实可以在Vocab模组直接写转义符吧。

点评

可以的  发表于 2018-2-17 19:36
一个只会简单事件的Rm新人,脚本完全不懂。只求做个简单的游戏完成自己的游戏之梦而已。
第一个游戏已经完成,等待各素材的完成和测试。
回复

使用道具 举报

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

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部