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

Project1

 找回密码
 注册会员
搜索
楼主: harinlen
打印 上一主题 下一主题

[版务] 【活动】【VA】RGSS 3 入门教程大家写(更新13/02/15)

  [复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
41 小时
注册时间
2010-7-10
帖子
111
1
发表于 2013-2-13 18:08:45 | 显示全部楼层
candy2266 发表于 2012-10-18 12:19
实例变量

class Tests
  @@a=0
  def initialize
    @@a=@@a+1
  end
  
  def geta
    @@a
  end
  
end

pa = Tests.new
msgbox pa.geta

pb = Tests.new
msgbox pa.geta
msgbox pb.geta


结果: 1 2 2
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
41 小时
注册时间
2010-7-10
帖子
111
2
发表于 2013-2-13 18:39:22 | 显示全部楼层
本帖最后由 zhangchi5 于 2013-2-13 18:40 编辑

RGSS3: class Window

RGSS中有一个叫Window的类,主要用于创建窗口。
这一节我们将分别讨论各种窗口
Window: The Simple Window
基本的窗口就是一个没有任何东西的窗口。建议不要使用RGSS内置类Window,而用Window_Base
【创建方法】
Variable = Window_Base. new (x, y, w, h)
你将可以在x,y位置创建一个长宽为w,h的窗口
Sample

RUBY 代码复制
  1. class Scene_Test < Scene_Base
  2.   def post_start
  3.     super
  4.     @newwindow = Window_Base.new(0,0,Graphics.width,Graphics.height)
  5.   end
  6.   def update
  7.     super
  8.     @newwindow.update #可以用update_all_window替换
  9.   end
  10.   def pre_terminate
  11.     super
  12.     @newwindow.dispose
  13.   end  
  14. end


Picture:






点评

其实,在写的时候就应该直接用Scene_Title做窗口,而不是,在学习中的问,应该怎么样调用,然后在说,替换掉某段初始窗口= =个人感觉  发表于 2013-7-1 17:09
怎么没@到……(话说不会有人叫“到”吧……)  发表于 2013-3-8 17:16
@神秘来客3 请注意一下- -如果你要运行,在SceneManager中把第一个场景换掉!!应该有一个“Scene_Title”替换成"Scene_Test"  发表于 2013-2-22 16:52
就是不运行啊咋回事 也不报错  发表于 2013-2-20 18:00

评分

参与人数 1梦石 +1 收起 理由
Mic_洛洛 + 1 更新奖励!!

查看全部评分

回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
41 小时
注册时间
2010-7-10
帖子
111
3
发表于 2013-2-13 20:03:30 | 显示全部楼层
Window: The Simple Window with Animation(带动画的窗口)
窗口是可以有动画的。不过在这之前还要介绍一下Window_Base类以及Window类的一些方法与属性
【方法】
dispose     释放
open       打开动画
close       关闭动画
show       显示窗口
hide        隐藏窗口
activate       启用窗口
deactivate     冻结窗口
【属性】
openness     开启度
opacity        透明度
x, y, width,height     在此不解释了
z                  窗口深度。Z大则窗口在上面
【提示】部分Window类里的属性并没有给出我认为那是不重要的详细可以参阅RMVX/ACE帮助文档
【动画效果】
窗口打开(window.open)与关闭(window.close) 【之前预处理window.openness=0
窗口淡入(window.opacity= window.opacity+16)淡出(window.opacity= window.opacity-16)【之前预处理window.opacity=0
窗口色调改变:全黑到亮(window.tone=Tone.new(0,0,0,window.tone.gray+16))全亮到黑(window.tone=Tone.new(0,0,0,window.tone.gray-16))【之前预处理window.tone=Tone.new】【使用这个是要先执行update函数的super
窗口飞进来【window.x=window.x+1】【预处理window.x=-window.width

Sample
这里注意一点,我在上一个帖子里没有注意的问题:
任何元件的创建都在start函数里,释放都在terminate函数里。

RUBY 代码复制
  1. class Scene_Test < Scene_Base
  2.   def start
  3.     super
  4.     @newwindow = Window_Base.new(0,0,Graphics.width,Graphics.height)
  5.     @newwindow.openness=0
  6.   end
  7.   def post_start
  8.     super
  9.     @newwindow.open
  10.   end
  11.   def update
  12.     super
  13.     @newwindow.update #可以用update_all_window替换
  14.   end
  15.   def per_terminate
  16.     @newwindow.close
  17.     super
  18.   end
  19.  
  20.   def terminate
  21.     @newwindow.dispose
  22.     super
  23.   end  
  24. end




Picture:





点评

脚本第1行:uninitialized constant Object::Scene_Base  发表于 2013-4-13 18:27
不执行  发表于 2013-2-16 16:32

评分

参与人数 1梦石 +1 收起 理由
Mic_洛洛 + 1 更新奖励!!

查看全部评分

回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-5-9 14:13

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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