查看: 5658|回复: 10

[已经解决] 後台腳本,怎麼呼叫公共事件?

[复制链接]
梦石
0
星屑
5256
在线时间
760 小时
注册时间
2009-1-21
回帖
236
发表于 2015-8-3 22:43:56 | 显示全部楼层 |阅读模式

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

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

×
本帖最后由 御之嵐 于 2015-8-4 13:47 编辑

(如果這邊不能問含有R18相關內容的東西的話  還請告知一下,謝謝)

RT
寫了一個R18遊戲有的狀態視窗
裡面記錄了某些東西的次數
還有立繪

做法是
做了一個視窗給他
用物品事件的腳本呼叫視窗
然後執行公共事件顯示立繪

成果是這樣
SDwssNW.jpg

但是 因為 視窗是蓋在遊戲上面
所以在返回的時候 立繪  會慢半拍的關閉

有的時候還會像這樣
5aUgcFP.jpg

有機率性的消失
而且還蠻頻繁的


左邊的是 立繪判斷的公共事件
右邊的是 物品呼叫視窗的公共事件
01.jpg

這個是 視窗的腳本
視窗腳本#~ 窗口部分
#~ 设置显示任务的窗口
class Window_M5Task < Window_Selectable
  def initialize
    super(0, 0, 250, 300)
#~     super(0, 0, Graphics.width, Graphics.height)
#~     self.opacity = 0
    draw_text_ex(4, 0, "\\c[6]OO回数:\\c[27]\\V[2] \\c[0]")
    draw_text_ex(4, 20, "\\c[6]OO回数:\\c[27]\\V[5] \\c[0]")
    draw_text_ex(4, 40, "\\c[6]OO回数:\\c[27]\\V[7] \\c[0]")
    draw_text_ex(4, 60, "\\c[6]OO回数:\\c[27]\\V[9] \\c[0]")
    draw_text_ex(4, 80, "\\c[6]OOO回数:\\c[27]\\V[6] \\c[0]")
    draw_text_ex(4, 100, "\\c[6]OO使用回数:\\c[27]\\V[3] \\c[0]")
    draw_text_ex(4, 120, "\\c[6]OO使用回数:\\c[27]\\V[4] \\c[0]")
    draw_text_ex(4, 140, "\\c[6]OOOOO回数:\\c[27]\\V[8] \\c[0]")
    draw_text_ex(4, 160, "\\c[6]OOOO回数:\\c[27]\\V[11] \\c[0]")
    draw_text_ex(4, 180, "\\c[6]OOOO回数:\\c[27]\\V[12] \\c[0]")
    draw_text_ex(4, 200, "\\c[6]战斗失利回数:\\c[27]\\V[1] \\c[0]")
    activate
  end
end

#~ 场景部分
#~ 设置显示任务的场景
class Scene_M5Task < Scene_MenuBase  
  def start
    super
    @status_window = Window_M5Task.new
    @status_window.set_handler(:cancel,   method(:return_scene))
  end
  
  #去除菜單背景黑色半透明畫面
  def create_background
    @background_sprite = Sprite.new
    @background_sprite.bitmap = SceneManager.background_bitmap
  end
end


#去除菜單背景模糊效果
class << SceneManager
  def snapshot_for_background
    @background_bitmap.dispose if @background_bitmap
    @background_bitmap = Graphics.snap_to_bitmap
  end
end


因為視窗的 模糊效果 和 半透明黑色部分會蓋住立繪
所以我就把它拿掉了

====================================================

想要問的是

1. 有沒有辦法把 公共事件的立繪 移到視窗的上層
 好讓他同步出現嗎?

2. 如果把這個視窗新增到了選單裡面作為一個選單項目
 有辦法呼叫公共事件嗎?

3. 要在視窗內插入圖片還要有判斷的方式去更變 立繪的話
 只能在腳本內進行判斷嗎?



腳本呼叫公共事件
昨天稍微找了一下資訊
只有找到 這個用法
  1. $game_temp.reserve_common_event(1) #数字为公共事件ID
复制代码
不過這個似乎是在 事件的腳本內去呼叫的用法
應該沒錯吧?

還是說 後臺腳本沒辦法這樣使用Σヽ(°Д°;)ノ?

因為覺得公共事件比較好去理解整個流程所以不知道能不能這樣做_(:з」∠)_
而且要判斷的東西還蠻多的,希望有紙娃娃的換裝系統
也希望能附上表情的變換,如果這樣用腳本去做的話
感覺會很麻煩吶 (ᇂдᇂ )

雖然標題是呼叫公共事件的問題
但是後面突然想到了相關的問題就順便問了一下
希望能幫忙解惑
如果有類似的腳本提供參考也行
謝謝

闇吼者の災悪眷族

梦石
0
星屑
1366
在线时间
2881 小时
注册时间
2014-7-29
回帖
6408
发表于 2015-8-3 22:50:26 | 显示全部楼层
不能发工口的东西是综合站规呢,小学生看了根本把持不住,你最好把必要的部分上些码。

点评

呼叫地圖事件?,不太懂,能不能有個具體的說明 (;゚д゚)?,謝謝吶  发表于 2015-8-3 23:08
不知道要怎麼遮掩,只好都遮了,下次我會注意一些的,抱歉( ̄^ ̄ゝ  发表于 2015-8-3 23:04
呼叫公共事件不如呼叫地圖事件  发表于 2015-8-3 23:03
(ᇂдᇂ ) 虽然在我们看来大码可能更枣糕,但这不重要了(to,楼主:嗯,这样码着就可以了)  发表于 2015-8-3 23:00
打碼了,如果還有地方沒遮掩到還請告知一下,造成困擾了,抱歉_(:з」∠)_  发表于 2015-8-3 22:58
回复

使用道具 举报

梦石
0
星屑
22879
在线时间
8598 小时
注册时间
2011-12-31
回帖
3270
发表于 2015-8-3 23:30:01 | 显示全部楼层
本帖最后由 tseyik 于 2015-8-3 23:42 编辑

http://blueredzone.com/script/vxace/vxace_callmapevent.html
マップイベント呼び出し(RGSS3)
書式
MapEvent.call(%map_id%, %event_id%, %page%)
例
例)現在地圖ID3事件第2頁目呼出
MapEvent.call(0, 3, 2)

例)地圖ID2事件ID1現在条件満足呼び出す
MapEvent.call(2, 1, 0)

例)現在実行中事件第1頁呼出
MapEvent.call(0, 0, 1)

例)現在地圖変数1之値同之事件第1頁目呼出
MapEvent.call(0, $game_variables[1], 1)

同類脚本
http://canarialt.blog.fc2.com/blog-entry-73.html
イベントの呼び出し拡張
除了地圖事件也可呼出公用事件
#_/ □ 必須 : 「共有変数スクリプト」
#_/           「注釈取得スクリプト」

点评

fc2.com被墙是正常巴  发表于 2015-8-6 18:36
第二个链接被墙了···  发表于 2015-8-6 18:33
回复

使用道具 举报

梦石
0
星屑
5256
在线时间
760 小时
注册时间
2009-1-21
回帖
236
 楼主| 发表于 2015-8-4 01:22:44 | 显示全部楼层
tseyik 发表于 2015-8-3 23:30
http://blueredzone.com/script/vxace/vxace_callmapevent.html
マップイベント呼び出し(RGSS3)
書式


兩個腳本使用的效果
跟直接呼叫公共事件的效果一樣的說_(:з」∠)_

感覺上就是 把公共事件的內容直接搬到 地圖事件
然後再呼叫地圖事件 這樣
最後關閉視窗的時候 扔然會慢半拍的關閉 立繪

左邊是原本的  右邊是用了腳本之後的

01.jpg

不知道有沒有用錯


雖然畫面上的效果是達到了
但是使用上的感覺是

視窗 跟 立繪  同時出現
但是關閉的時候 卻是
先關閉視窗,在關閉立繪
所以導致慢半拍 ლ(・ω・ლ)

這慢半拍的感覺就像是
移動鍵按者不放,然後開啟選單,在關閉選單,直到人物開始移動 的延遲感
大家可以嘗試看看
我想這應該不是 等待 1幀 造成的結果吧 ლ(゚Д゚ლ)
但是如果不等待那 1幀的話 立繪又會馬上關閉阿 (;゚д゚)

難道說在視窗內的框架範圍插入圖片只能使用 腳本編輯器的腳本去寫嗎? _(:з」∠)_
回复

使用道具 举报

梦石
0
星屑
22879
在线时间
8598 小时
注册时间
2011-12-31
回帖
3270
发表于 2015-8-4 08:49:52 | 显示全部楼层
御之嵐 发表于 2015-8-4 01:22
兩個腳本使用的效果
跟直接呼叫公共事件的效果一樣的說_(:з」∠)_

関於關閉視窗慢半拍的問題
試試這修正patch
至於能不能解決,要試試才能知道
http://woodpenguin.web.fc2.com/rgss3/wdtk_patch.html
回复

使用道具 举报

梦石
0
星屑
5256
在线时间
760 小时
注册时间
2009-1-21
回帖
236
 楼主| 发表于 2015-8-4 12:06:51 | 显示全部楼层
tseyik 发表于 2015-8-4 08:49
関於關閉視窗慢半拍的問題
試試這修正patch
至於能不能解決,要試試才能知道


嘗試了之後
還是沒有改善就是了

剛剛稍微比對了一下

移動 按者不放
開選單→關閉選單→人物開始移動
跟
開選單→關閉選單→立繪消失

開始移動 和 立繪消失 的時間點是差不多的
所以
也不能說是關閉視窗慢半拍
簡單來說就是 選單完全關閉後才動作

感覺問題跟標題不太符合
走偏了許多
但是主要的問題還是文章內的那三個

立繪有機率性消失的問題目前已經暫時解決了
剩下的我再慢慢想看看有沒有其他的做法好了

真的沒辦法的話
就只能把顯示立繪的判斷寫在腳本裡面了_(:з」∠)_


雖然問題目前沒有解決
但是還是很感謝你的熱心幫忙
謝謝ヾ(゚∇ ゚)ノ
回复

使用道具 举报

梦石
0
星屑
22879
在线时间
8598 小时
注册时间
2011-12-31
回帖
3270
发表于 2015-8-4 13:05:10 | 显示全部楼层
2. 如果把這個視窗新增到了選單裡面作為一個選單項目
 有辦法呼叫公共事件嗎?
オリジナルサブメニュー
以自作選單指令呼出 作成公共事件
http://woodpenguin.web.fc2.com/rgss3/sub_menu.html
例:
加上コンフィング指令,選擇後執公共事件1>公共事件2
可加多個公共事件,多個指令
List = [["コンフィング", 1, 2],
          ]
1:/3:可孝慮用
<拡張>ピクチャの操作
http://cacaosoft.web.fc2.com/tkool/script/rgss3/picex.html

示範
http://cacaosoft.webcrow.jp/sample/

评分

参与人数 1星屑 +10 收起 理由
御之嵐 + 10

查看全部评分

回复

使用道具 举报

梦石
0
星屑
5256
在线时间
760 小时
注册时间
2009-1-21
回帖
236
 楼主| 发表于 2015-8-4 13:46:39 | 显示全部楼层
tseyik 发表于 2015-8-4 13:05
2. 如果把這個視窗新增到了選單裡面作為一個選單項目
 有辦法呼叫公共事件嗎?
オリジナルサブメニュー


了解,我會試試看的

=====================================================
剛剛找了一下資訊
看到了這個
http://rpg.blue/thread-256268-1-1.html

所以說
  1. $game_temp.reserve_common_event(1) #數字爲公共事件ID
复制代码
可以插入在
這個腳本裡面 讓它顯示立繪嗎?
視窗腳本#~ 窗口部分
#~ 设置显示任务的窗口
class Window_M5Task < Window_Selectable
  def initialize
    super(0, 0, 250, 300)
#~     super(0, 0, Graphics.width, Graphics.height)
#~     self.opacity = 0
    draw_text_ex(4, 0, "\\c[6]OO回数:\\c[27]\\V[2] \\c[0]")
    draw_text_ex(4, 20, "\\c[6]OO回数:\\c[27]\\V[5] \\c[0]")
    draw_text_ex(4, 40, "\\c[6]OO回数:\\c[27]\\V[7] \\c[0]")
    draw_text_ex(4, 60, "\\c[6]OO回数:\\c[27]\\V[9] \\c[0]")
    draw_text_ex(4, 80, "\\c[6]OOO回数:\\c[27]\\V[6] \\c[0]")
    draw_text_ex(4, 100, "\\c[6]OO使用回数:\\c[27]\\V[3] \\c[0]")
    draw_text_ex(4, 120, "\\c[6]OO使用回数:\\c[27]\\V[4] \\c[0]")
    draw_text_ex(4, 140, "\\c[6]OOOOO回数:\\c[27]\\V[8] \\c[0]")
    draw_text_ex(4, 160, "\\c[6]OOOO回数:\\c[27]\\V[11] \\c[0]")
    draw_text_ex(4, 180, "\\c[6]OOOO回数:\\c[27]\\V[12] \\c[0]")
    draw_text_ex(4, 200, "\\c[6]战斗失利回数:\\c[27]\\V[1] \\c[0]")
    activate
  end
end

#~ 场景部分
#~ 设置显示任务的场景
class Scene_M5Task < Scene_MenuBase  
  def start
    super
    @status_window = Window_M5Task.new
    @status_window.set_handler(:cancel,   method(:return_scene))
  end
  
  #去除菜單背景黑色半透明畫面
  def create_background
    @background_sprite = Sprite.new
    @background_sprite.bitmap = SceneManager.background_bitmap
  end
end


#去除菜單背景模糊效果
class << SceneManager
  def snapshot_for_background
    @background_bitmap.dispose if @background_bitmap
    @background_bitmap = Graphics.snap_to_bitmap
  end
end


但是不知道要插入在哪邊?

自己嘗試了一陣子,好像都沒有效果

点评

裡面有個同時顯示視窗和圖片的功能,但是視窗內能打的文字很少,沒辦法一次輸入完我要顯示的資訊,有辦法增加腳本的輸入行數嗎?  发表于 2015-8-4 17:18
我晚點研究看看,看能不能達到我要的效果,辛苦了,謝謝吶ヾ(゚∇ ゚)ノ  发表于 2015-8-4 16:16
那個<拡張>ピクチャの操作很好用文字,変数,圖象也可使用,有没有視窗框,多項物件成為群組,也可  发表于 2015-8-4 14:10
回复

使用道具 举报

梦石
0
星屑
22879
在线时间
8598 小时
注册时间
2011-12-31
回帖
3270
发表于 2015-8-4 18:08:46 | 显示全部楼层
是這個麼
例:
Image001.png
回复

使用道具 举报

梦石
0
星屑
5256
在线时间
760 小时
注册时间
2009-1-21
回帖
236
 楼主| 发表于 2015-8-4 21:52:31 | 显示全部楼层
tseyik 发表于 2015-8-4 18:08
是這個麼
例:



我用的是這個

01.jpg

上面的腳本 是設定視窗的位置和大小
下面的腳本 是視窗的內容

但是那些只是一部分而已
後續的文字 沒辦法輸入在腳本裡面
好像也沒辦法接續下去


而且一串文字過長的話
會分成兩段
像圖中的文字 有 \V變數 或者 \C顏色的
  1. \\c[6]OO回数:\\c[27]\\V[2] \\c[0]
复制代码
分段的變成這樣
  1. \\c[6]OO回数:\\c[27]\\V[2] \
  2. \c[0]
复制代码
就會造成無法判斷
顯示的話就會變成
  1. OO回数: xxx [0]
复制代码
xxx是變量的數值


不知道有沒有擴展腳本輸入行數的方法?
因為我在那個腳本裡面好像沒有看到有能輸入比較多行文字的用法
回复

使用道具 举报

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

本版积分规则

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

在本版发帖返回顶部