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

Project1

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

[推荐问答] 事件的文字顯示能判定當前主角是誰來顯示名字嗎?

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
158 小时
注册时间
2016-1-7
帖子
129
跳转到指定楼层
1
发表于 2016-2-14 01:18:27 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式

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

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

x
我的狀況是我讓玩家能選擇使用男角或女角
因為名字不同所以在進行劇情時,不知道要怎麼顯示他們的名字才好

腳本提供我用 \n[角色id] 顯示角色的名字,但因為上述狀況,我不曉得該怎麼做才好
選角的腳本裡有actor.name這個,看起來就是顯示角色名字的東西了(在選角畫面那個時候也有角色名字顯示),不知道這個能不能直接在事件的文字顯示叫出來使用?
如果actor.name不能再事件的文字顯示叫出來使用,是否有別的解決辦法?

以下為選角的腳本關於名字的部分(完整的腳本我曾經貼在這裡,要拉到2樓)
RUBY 代码复制
  1. # 處理角色名字顯示
  2.       actor = $game_actors[ACTORS[i]]
  3.       @actors_help[i] = RPG::Sprite.new
  4.       @actors_help[i].bitmap = Bitmap.new(640,480)
  5.       @actors_help[i].x =  i * 160
  6.       for c in 0...180
  7.         @actors_help[i].bitmap.fill_rect(i, c*1,160 ,3 ,Color.new(0,0,0,255-c*1.5))
  8.         @actors_help[i].bitmap.fill_rect(i, 300+c*1,160 ,3 ,Color.new(0,0,0,c*2))
  9.       end
  10.       @actors_help[i].z = 999
  11.       @actors_help[i].bitmap.draw_text(0, 10,120, 32, actor.name, 2)

评分

参与人数 1星屑 +135 收起 理由
RyanBern + 135 手动认可奖励+推荐问答

查看全部评分

Lv1.梦旅人

梦石
0
星屑
50
在线时间
158 小时
注册时间
2016-1-7
帖子
129
7
 楼主| 发表于 2016-2-17 01:40:59 | 只看该作者
夜狠简单 发表于 2016-2-15 18:20
帮人帮到底吧

再次謝謝範例解說,但我還是個問題兒童OTZ

首先對於$game_variables[n1] = id,我直接插在218行而後興沖沖跑去事件適用
事件對話也使用了\n[\v[n1]],最後呈現的結果還是直白的\n[\v[n1]]

再來就是"角色名33-37行"的那個腳本我看不太懂@@
比較重要的除了33-37,41-63好像也是重要相關使用方法,然而我還是無法領會他們的用法跟意義

比方說
$1.to_i是什麼東西?
35行為什麼寫$game_actors[4].name

事件指令的\c[]是顏色還是跟判斷角色有關@@?

点评

.to_i原來是方法,那$1是什麼? 版主提供的方法我終於可以用出來了!!!<<激動  发表于 2016-2-18 02:15
$game_variables和事件觸發條件第三個的變數是同一個東西還是不同的呢? 35行我的意思是他又不是個method,一般不是 變數=$game_actors[4].name 之類?  发表于 2016-2-18 02:12
\c[]是颜色 35行的意思是 队伍中的第一位名字等于第4位角色的名字且事件中显示名字角色为1则显示女主角的名字。 用版主提供的方法很简单,以后好...  发表于 2016-2-17 02:00
n1改为变量数字 如第100个变量$game_variables[100] = id \n[\v[100]] $game_actors[4].name 4号角色的名字 $1.to_i匹配到的换为数值  发表于 2016-2-17 01:44
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
12157
在线时间
4435 小时
注册时间
2014-4-11
帖子
5955

开拓者

6
发表于 2016-2-16 09:20:49 | 只看该作者
可以在公共事件里写两个公共事件,一个男的剧情,一个女的剧情。然后设两个变量,一个男的剧情变量,一个女的剧情变量。用变量判断剧情进度。
这样剧情就只要在公共事件里写就好了。

点评

好喔<<雖然還是不懂這個做法的應用  发表于 2016-2-19 01:18
这个做法能达到想要的效果。但是不是判断名字。而是把剧情分为两个线,你可以设为女线男线,也可以设为任何两人的线。人物不同后面的剧情不同  发表于 2016-2-18 10:23
這個做法的話應該是這樣寫囉?1號裡基本就是用條件分期判斷誰目前在隊裡然後分別執行2,3號 但2,3號裡為何要判斷劇情階段?跟判斷名字的有何關係?  发表于 2016-2-18 02:21
在地图上设置,执行公共事件1号,然后1号判断主角性别,是男的执行2号公共事件,是女的执行3号公共事件。2号里面再判断现在剧情到哪个阶段来显示  发表于 2016-2-17 12:54
就是本来你要在每个出现剧情的地方都写上剧情的,但是这样你只要在每个地方都设一个公共的公共事件。修改的时候只要改公共事件就全部都改过...  发表于 2016-2-17 12:51
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
158 小时
注册时间
2016-1-7
帖子
129
5
 楼主| 发表于 2016-2-16 02:29:04 | 只看该作者
角色ID指的是資料庫的ID嗎?
是的話那對應到腳本裡就是指 actor_id 這個變數 (第196行)
  1. actor_id = ACTORS[@actors_index]
复制代码
我不知道變量S該怎麼宣告出來<<完全靠對其他語言的應用經驗連矇帶猜推測使用方式
那個變量S應該也是宣告在同一個腳本中,如果寫出來是像這樣嗎?
S = actor_id
這樣的話為什麼不能\n[\v[actor_id]]呢?我這樣子下去嘗試跑出來的結果不對
回复 支持 反对

使用道具 举报

Lv4.逐梦者 (版主)

梦石
0
星屑
9532
在线时间
5073 小时
注册时间
2013-6-21
帖子
3580

开拓者贵宾剧作品鉴家

4
发表于 2016-2-15 18:53:46 | 只看该作者
选择角色时,把角色的ID代入某变量S。
然后调用人名\n[\v[S]]即可。

评分

参与人数 1星屑 +20 收起 理由
夜狠简单 + 20 \n[\v[S]] 学习了

查看全部评分

回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1358
在线时间
1295 小时
注册时间
2012-8-4
帖子
749
3
发表于 2016-2-15 18:20:34 | 只看该作者
本帖最后由 夜狠简单 于 2016-2-16 13:24 编辑






帮人帮到底吧

Project5555.rar

192.75 KB, 下载次数: 75

点评

更新范例了  发表于 2016-2-16 13:25
謝謝你的解答跟範例檔。不過我應該是不能這樣做的。我的選角是使用了腳本來達到特別的呈現效果所以不能這樣做。入隊是以腳本控制的。  发表于 2016-2-16 02:38
对了,那个选择角色性别看出选择角色就好,不然别扭  发表于 2016-2-15 18:28

评分

参与人数 1梦石 +1 收起 理由
RyanBern + 1 认可答案

查看全部评分

回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
12157
在线时间
4435 小时
注册时间
2014-4-11
帖子
5955

开拓者

2
发表于 2016-2-14 01:51:26 | 只看该作者
用条件分歧,写两份,是男主的时候显示1份,是女主的时候显示另一份

点评

但這樣子重複的內容會有很多呢,事件內容會變得很長不易維護@@  发表于 2016-2-16 02:35
剛刷新出結果嘗試完可以達到我要的效果,然而論壇馬上就進不來了只好拖到現在。謝謝前輩迅速有效的解答。  发表于 2016-2-16 02:32
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-23 15:19

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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