赞 | 0 |
VIP | 0 |
好人卡 | 0 |
积分 | 0 |
经验 | 17619 |
最后登录 | 2016-7-17 |
在线时间 | 366 小时 |
Lv1.梦旅人
- 梦石
- 0
- 星屑
- 47
- 在线时间
- 366 小时
- 注册时间
- 2012-10-6
- 帖子
- 221
|
加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员
x
以下是我写的脚本。 我是新手,希望各位大神提提意见 这个脚本只是是显示自定义皮肤的菜单。
#==============================================================================
# ■ My_Window
#------------------------------------------------------------------------------
# 自己定义的窗口类,用于显示窗口在画面上继承自Sprite类。
#==============================================================================
class My_Window
@WindowSkin #窗口皮肤
@ButtionSkin #按钮皮肤
@ButtionActiveSkin #按钮被选中状态下皮肤
@StaticSkin #静态文本的皮肤
@ItemNumber #窗口中按钮的个数
@Index #被选中按钮的编号,从零开始编号
@ButtionArray
def initialize(commands,item_number) #局部变量约定小写
@WindowSkin=Sprite.new #窗口皮肤
@WindowSkin.bitmap=Bitmap.new(commands[0])
@WindowSkin.x=120 #窗口位置
@WindowSkin.y=120
@ButtionSkin =Bitmap.new(commands[1]) #按钮皮肤
@ButtionActiveSkin=Bitmap.new(commands[2]) #按钮被选中时的皮肤
@ItemNumber=item_number #按钮的个数
@Index=0 #被选中按钮的编号
@ButtionArray=Array.new item_number,Sprite #按钮的数组
for i in 0... item_number
@ButtionArray[i]=Sprite.new
@ButtionArray[i].bitmap=@ButtionSkin
@ButtionArray[i][email protected]
@ButtionArray[i][email protected]+i*50-10 #按钮的位置根据需要自己调
end
end
def update #按钮添加响应
if(Input.repeat?(Input::DOWN)) #按下向下的按钮
@ButtionArray[@Index].bitmap=@ButtionSkin #把当前按钮的皮肤改为不被选中的状态
if(@Index==@ItemNumber-1) #如果按钮到最后一个 则把编号赋值为第一个
@Index=0 #程序中编号一般从0开始
else
@Index=@Index+1
end
end
if(Input.repeat?(Input::UP))
@ButtionArray[@Index].bitmap=@ButtionSkin
if(@Index==0)
@Index=@ItemNumber-1
else
@Index=@Index-1
end
end
@ButtionArray[@Index].bitmap=@ButtionActiveSkin #键盘响应结束
#按钮状态改为选中状态
end
end |
|