Project1
标题:
新人的脚本
[打印本页]
作者:
电锤斧王
时间:
2012-10-20 19:43
标题:
新人的脚本
以下是我写的脚本。 我是新手,希望各位大神提提意见 这个脚本只是是显示自定义皮肤的菜单。
#==============================================================================
# ■ 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
作者:
你最珍贵
时间:
2013-3-8 13:28
用代码框弄起来吧!
#==============================================================================
# ■ 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
复制代码
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1