Project1

标题: 能请教一些关于脚本基础的问题吗? [打印本页]

作者: 小淤    时间: 2013-6-24 15:10
标题: 能请教一些关于脚本基础的问题吗?
本帖最后由 小淤 于 2013-6-24 15:10 编辑

  嗯.....我是一个不折不扣的新手啦
                             {:2_287:} 但是不想当什么伸手党之类的
        {:2_275:}   我很想做出心中完美的游戏呢!!!
                                                     {:2_270:} 不说得太远啦! 能请教下 脚本最基础的~~~~~~~
       请问   rpgVA脚本的指令有哪些 分别有什么用么 ?要学就要从基础的学起呢,
                                             {:2_272:} 一步一脚印!!!!!!
            请各位会脚本的教教啦   谢谢!
作者: lirn    时间: 2013-6-24 15:17
打开F1,可以帮到你。
作者: 小淤    时间: 2013-6-24 15:20
lirn 发表于 2013-6-24 15:17
打开F1,可以帮到你。

哦 谢谢啦 不过看着有点抽象 = =
作者: f13971397    时间: 2013-6-24 17:03
1.イベントコマンドの機能解說(事件指令解釋器的解說。)
2.ゲームライブラリ -> VX Ace データ構造(VX Ace的資料庫結構)
3.スクリプト入門(腳本入門)


作者: acn00269    时间: 2013-6-24 18:35
本帖最后由 acn00269 于 2013-6-24 18:38 编辑

外站上找的...顺便小小的汉化了一下
RUBY 代码复制
  1. #变量
  2. $game_variables[n]
  3. #开关
  4. $game_switches[n]
  5. #条件分歧
  6. if #something
  7. #something
  8. else
  9. #something
  10. end
  11. #显示图片
  12. screen.pictures[index].show(file_name, upperleft/center, x, y, x zoom, y zoom, opacity, blend type)
  13. #移动图片
  14. screen.pictures[n].move(0/1 (top left or center), x, y, zoom1, zoom2, opacity, blend type (0,1, 2), wait)
  15. #更改图片色调
  16. screen.pictures[n].start_tone_change(Tone.new(0, 0, 0, 0), wait)
  17. #循环
  18. For
  19. #something
  20. end
  21. #设置移动路线
  22. move_route = RPG::MoveRoute.new
  23. move_route.repeat = false
  24. move_route.skippable = true
  25. m = RPG::MoveCommand.new
  26. m.code = 45
  27. m.parameters = ["script call here"]
  28. move_route.list.insert(0,m.clone)
  29. $game_player.force_move_route(move_route)
  30. #移动事件至新地点
  31. $game_map.events[id].moveto(new_x, new_y)
  32. #场所移动
  33. $game_player.reserve_transfer(map_id, x, y, direction)
  34. #更改画面色调
  35. t = Tone.new(red,green,blue, gray)
  36. screen.start_tone_change(t, duration)
  37. #震动画面
  38. @params = []
  39. @params[0] = power or $game_variables[x]
  40. @params[1] = speed or $game_variables[y]
  41. @params[2] = duration or $game_variables[z]
  42. #呼叫公共事件
  43. $game_temp.reserve_common_event(id)
  44. #BGM等音效的播放
  45. RPG::SE.new("SE Name", volume, pitch).play
  46. RPG::ME.new("ME Name", volume, pitch).play
  47. RPG::BGS.new("BGS Name", volume, pitch).play
  48. RPG::BGM.new("BGM Name", volume, pitch).play
  49. #显示文本
  50. $game_message.add("Text")
  51. #得失物品
  52. $game_party.gain_item($data_items[id], amount)
  53. $game_party.lose_item($data_items[id], amount)
  54. #(得失武器/防具使用$data_weapons或者$data_armors替换$data_items)
  55.  
  56. #这个没懂...
  57. $game_player.followers.gather
  58. #设置人物跟随
  59. $game_player.followers.visible = true or false
  60. #删除事件
  61. $game_map.events[event_id].erase
  62. #某些条件分歧中按键设置
  63. Input.repeat?(:A)
  64. Input.press?(:A)
  65. #移动路线
  66. $game_player.dash?
  67. $game_player.jumping?
  68. $game_map.events[event_id].moving?
  69. $game_map.events[event_id].jumping?
  70. #更改位置
  71. $game_map.events[event_id].x
  72. $game_map.events[event_id].y
  73. $game_player.x
  74. $game_player.y
  75. #加入角色
  76. $game_party.remove_actor(actor_id)
  77. #角色离队
  78. $game_party.add_actor(actor_id)
  79. #删除角色
  80. #(x=角色在数据库中的位置 0为1号角色 1为2号角色 以此类推)
  81. m = $game_party.members
  82. $game_party.remove_actor(m[x].id)
  83. #这个没懂...
  84. $data_items.each { |i|
  85. next if i.nil? or i.name == ""
  86. $game_party.gain_item(i, 99)
  87. }
  88. #得失金钱
  89. $game_party.gain_gold(amount)
  90. $game_party.lose_gold(amount)
  91. #检查当前所有金钱
  92. $game_party.max_gold
  93. #获取地图id和name
  94. $game_map.map_id
  95. $game_map.name
  96. #修正画面抖动错误 放在Game_Interpreter中
  97. def command_225
  98. screen.start_shake(@params[0], @params[1], @params[2])
  99. wait(@params[2]) if @params[2]
  100. end
  101. #显示选择
  102. params = []
  103. choices = []
  104. choices.push("choice 1")
  105. choices.push("choice 2")
  106. params.push(choices)
  107. params.push(0/1/2 this part is where you press cancel and which choice to default)
  108. setup_choices(params)

作者: 喵呜喵5    时间: 2013-6-24 20:18
http://rpg.blue/forum.php?mod=viewthread&tid=315743

请先去学习Ruby语言……
作者: 小淤    时间: 2013-6-24 20:20
喵呜喵5 发表于 2013-6-24 20:18
http://rpg.blue/forum.php?mod=viewthread&tid=315743

请先去学习Ruby语言……

论坛有么 ? 0.0都不知道 不过谢谢啦
作者: DeathKing    时间: 2013-6-27 00:01
事实上,你先要知道“脚本”是干什么的。简单的来看,脚本就是一段计算机程序,它是一些指令的集合,它让计算机按照你的期许执行动作。写脚本,就是在“编程”。“编程”贯穿了整个计算机科学。编程不但是一种工程,也是对思维的锻炼。如果想要学习RGSS3编程,那么:

1. 首先学习Ruby。Ruby是RGSS系统采用的程序设计语言,是一门上手非常容易的语言。
2. 学习编程的思想。思想是非常重要的,这些思想将指导你编写后面的程序。
3. 学习RGSS3。你要了解RGSS3是怎样运作的。这样才能写出想要的脚本。

事实上,写脚本是一条不归路,因为投入太大了(不一定在短期见效),而且需要一定的天赋。所以不推荐人人都学脚本。
作者: 小淤    时间: 2013-6-27 19:15
DeathKing 发表于 2013-6-27 00:01
事实上,你先要知道“脚本”是干什么的。简单的来看,脚本就是一段计算机程序,它是一些指令的集合,它让计 ...

不是C语言更好入门么?不应该说 C语言会了 其他计算机语言就有个基础了吧
作者: DeathKing    时间: 2013-6-27 20:38
小淤 发表于 2013-6-27 19:15
不是C语言更好入门么?不应该说 C语言会了 其他计算机语言就有个基础了吧 ...

C语言和Ruby风格迥异。一个是面向过程编程(C语言),一个是面向对象(Ruby语言)。C语言是从计算机的角度设计的,而Ruby是从人的角度设计的。

总的来说,Ruby和C还是非常不同的。C更加底层,Ruby更加高阶。如果你想学习脚本,我还是推荐你不要先学C。C很简洁,也很易学,但是想要深入学习,也需要投入大量的精力。
作者: 小淤    时间: 2013-6-27 21:17
DeathKing 发表于 2013-6-27 20:38
C语言和Ruby风格迥异。一个是面向过程编程(C语言),一个是面向对象(Ruby语言)。C语言是从计算机的角 ...

哦 谢谢 那就是说 先学习下 Ruby? 嗯 谢谢啦~




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1