幻想森林

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 2062|回复: 7

[RMXP] 自製腳本按鈕無效改如何解決?

[复制链接]

4

主题

12

帖子

104

积分

③业余

积分
104
发表于 2010-8-6 18:27:11 | 显示全部楼层 |阅读模式
腳本執行到def update的時候,就跳過if Input.trigger?(Input::UP)沒執行......
(UP鍵怎麼按都沒反應)
過程中也沒跳出過錯誤視窗......
  1. #=====================================================================
  2. # ■CG回顧系統■
  3. #=====================================================================
  4. #■Window_CGchoice~游標窗口~
  5. #=============================
  6. class Window_CGchoice < Window_Base
  7. #定義實例變量
  8. attr_accessor :cgchoice_x #@cgchoice_x
  9. attr_accessor :cgchoice_y #@cgchoice_y
  10. #---------------------------#
  11. # 初始化窗口 #
  12. #---------------------------#
  13. def initialize
  14. super(0,0,640,480)
  15. self.contents = Bitmap.new(width - 32, height - 32)
  16. #優先級 X
  17. #窗口透明
  18. self.opacity = 0
  19. #初始化圖片游標座標
  20. @cgchoice_x = 0
  21. @cgchoice_y = 0
  22. end
  23. #CG Box/Item/CGactorCHOICE.png
  24. #CG Box/Item/CGbackCHOICE.png
  25. def cg_actor
  26. p "窗口游標"
  27. self.contents.clear
  28. self.contents.blt(@cgchoice_x-10, @cgchoice_y-15, RPG::Cache.picture('CG Box/Item/CGactorCHOICE.png'), Rect.new(0, 0, 640, 180), 255)
  29. end
  30. def cg_picture
  31. end
  32. end
复制代码
  1. #=====================================================================
  2. # ■CG回顧系統■
  3. #=====================================================================
  4. #■Scene_CGxActor~角色選擇~
  5. #=============================
  6. class Scene_CGxActor
  7. #定義實例變量
  8. attr_accessor :cgchoice_id #@cgchoice_id
  9. attr_accessor :cgchoice_x #@cgchoice_x
  10. attr_accessor :cgchoice_y #@cgchoice_y
  11. #---------------------------#
  12. # 更新畫面 #
  13. #---------------------------#
  14. def initialize
  15. #初始化選項
  16. @cgchoice_id = 0
  17. p @cgchoice_id#
  18. #游標窗口
  19. @choice_window = Window_CGchoice.new
  20. #呼叫游標
  21. @choice_window.cg_actor
  22. Graphics.transition #執行漸變
  23. loop do
  24. Graphics.update#更新畫面
  25. Input.update #更新輸入訊息
  26. update #角色選擇判定
  27. if $scene != self
  28. break
  29. end
  30. end
  31. Graphics.freeze #準備漸變(過渡)
  32. @choice_window.dispose
  33. end
  34. #---------------------------#
  35. # 角色選擇判定 #
  36. #---------------------------#
  37. def update
  38. if Input.trigger?(Input::UP)
  39. Audio.se_play("Audio/SE/" + "001-System01", 100, 100)
  40. if @cgchoice_id == 0
  41. @cgchoice_id = 4
  42. @choice_window.cgchoice_y +=30
  43. else
  44. @cgchoice_id -= 0
  45. @choice_window.cgchoice_y -= 5
  46. end
  47. @choice_window.cg_actor
  48. end
  49. end
  50. end
复制代码
回复

使用道具 举报

0

主题

13

帖子

104

积分

③业余

积分
104
QQ
发表于 2010-8-6 20:43:03 | 显示全部楼层
不知为啥感觉在6R看过这个帖子- -
def initialize
改成
def main
回复 支持 反对

使用道具 举报

4

主题

12

帖子

104

积分

③业余

积分
104
 楼主| 发表于 2010-8-7 19:03:04 | 显示全部楼层

回 1楼(神之瞳) 的帖子

把Scene_CGxActor類的initialize改成main就變成全部都沒執行了......
而且我的工程的main腳本,跟新開的空工程的main腳本相同......
回复 支持 反对

使用道具 举报

0

主题

13

帖子

104

积分

③业余

积分
104
QQ
发表于 2010-8-7 20:43:40 | 显示全部楼层
汝是怎么调用此脚本的?
不是$scene = XXXX.new么?
回复 支持 反对

使用道具 举报

4

主题

12

帖子

104

积分

③业余

积分
104
 楼主| 发表于 2010-8-7 21:57:38 | 显示全部楼层

回 3楼(神之瞳) 的帖子

嗯.是啊!
回复 支持 反对

使用道具 举报

550

主题

9116

帖子

214748万

积分

超级版主

如同神一般的存在,腿神!拖后腿的神~~

Rank: 8Rank: 8

积分
2147483647
发表于 2010-8-7 22:47:19 | 显示全部楼层
Xp...恩。。没有Scene_Base

缺少def main阿

scene的场景调用是在def main中用 loop 循环调用def update 阿。。。你这里面没有main而且没有父类,我倒是很好奇,这个scene怎么能运行呢

我仔细看了一下。。。初始化函数代替main。。。谁这么有创意

LZ试一下把它分离成初始化函数和main把。。。我再看看。。。理论上神之瞳说的方法可行啊
我就是你们的神,庶民们,追随我吧!跟着我一起拖后腿!
回复 支持 反对

使用道具 举报

550

主题

9116

帖子

214748万

积分

超级版主

如同神一般的存在,腿神!拖后腿的神~~

Rank: 8Rank: 8

积分
2147483647
发表于 2010-8-7 22:57:34 | 显示全部楼层
突然想到还有一个可能性。。。。真是。。。现试一下这个吧。。。我改成main了。。。没有main的话是无法纠错的。。。
  1. #=====================================================================
  2. # ■CG回顧系統■
  3. #=====================================================================
  4. #■Scene_CGxActor~角色選擇~
  5. #=============================
  6. class Scene_CGxActor
  7. #定義實例變量
  8. attr_accessor :cgchoice_id #@cgchoice_id
  9. attr_accessor :cgchoice_x #@cgchoice_x
  10. attr_accessor :cgchoice_y #@cgchoice_y
  11. #---------------------------#
  12. # 更新畫面 #
  13. #---------------------------#
  14. def initialize
  15. #初始化選項
  16. @cgchoice_id = 0
  17. #p @cgchoice_id#
  18. end
  19. def main
  20. #游標窗口
  21. @choice_window = Window_CGchoice.new
  22. #呼叫游標
  23. @choice_window.cg_actor
  24. Graphics.transition #執行漸變
  25. loop do
  26. Graphics.update#更新畫面
  27. Input.update #更新輸入訊息
  28. update #角色選擇判定
  29. if $scene != self
  30. break
  31. end
  32. end
  33. Graphics.freeze #準備漸變(過渡)
  34. @choice_window.dispose
  35. end
  36. #---------------------------#
  37. # 角色選擇判定 #
  38. #---------------------------#
  39. def update
  40. if Input.repeat?(Input::UP)
  41. Audio.se_play("Audio/SE/" + "001-System01", 100, 100)
  42. if @cgchoice_id == 0
  43. @cgchoice_id = 4
  44. @choice_window.cgchoice_y +=30
  45. else
  46. @cgchoice_id -= 0
  47. @choice_window.cgchoice_y -= 5
  48. end
  49. @choice_window.cg_actor
  50. end
  51. end
  52. end
复制代码
我就是你们的神,庶民们,追随我吧!跟着我一起拖后腿!
回复 支持 反对

使用道具 举报

4

主题

12

帖子

104

积分

③业余

积分
104
 楼主| 发表于 2010-8-8 18:43:24 | 显示全部楼层

回 6楼(secondsen) 的帖子

沒反應...該出現的都沒出現...好像沒執行似的......
是不是我用的版本有BUG啊...(越來越懷疑了)
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|幻想森林

GMT+8, 2024-5-6 04:32 , Processed in 0.023567 second(s), 21 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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