赞 | 0 |
VIP | 8 |
好人卡 | 27 |
积分 | 57 |
经验 | 41413 |
最后登录 | 2012-10-21 |
在线时间 | 833 小时 |
Lv4.逐梦者 弓箭手?剑兰
- 梦石
- 0
- 星屑
- 5714
- 在线时间
- 833 小时
- 注册时间
- 2010-11-17
- 帖子
- 1140
|
本帖最后由 一箭烂YiJL 于 2011-2-17 19:08 编辑
之前晚辈曾经打算过尝试一下用RGE,结果因为鼠标怪异(就是Mouse.update无法显示鼠标),
放弃了RGE,后来从"脚本术语"看到这个系统,于是重兴了我研究RGE。
而为了感谢DK,如果不嫌弃的话就接受了我这个吧,笑纳:- #==============================================================================
- # ■ 新MouseEx by一箭烂
- #------------------------------------------------------------------------------
- # 可以显示动态鼠标,并且可以调按下位置
- # (就是相枪瞄准那些鼠标应该为该鼠标长度的一半,我不懂解释= =)
- # 还有就是动态就是几个变化鼠标并排一个图案,
- # DK可以修改此脚本,有些英文用的不好请改。没有了~。 by一箭烂
- #==============================================================================
- module RGE
- module Control
- module MouseEx
-
- @mouse = Sprite.new
- @name = "mecha_icon" # 名称
- @press_x = 1 # 按下位置X坐标
- @press_y = 1 # 按下位置Y坐标
- @mouse_width = 32 # 每个鼠标长度
- @mouse_height = 32 # 每个鼠标高度
- @change_number = 2 # 动态鼠标数量
- @change_cursor_time = 20 # 鼠标变化时间(帧)
-
- def self.init
- @mouse.bitmap = RGE::Bitmap.new(@mouse_width,@mouse_height)
- @cache = Ph::Resource.system(@name)
- @rect = RGE::Rect.new(0,0,@mouse.bitmap.width,@mouse.bitmap.height)
- @mouse.z = 9999
- @now_cursor_index = 0
- self.next_icon
- end
-
- def self.update
- RGE::Mouse.update
- @mouse.x, @mouse.y = RGE::Mouse.pos
- @mouse.x -= @press_x - 1
- @mouse.y -= @press_y - 1
- @mouse.update
- self.next_icon if RGE::Graphics.frame_count % @change_cursor_time == 0
- end
-
- def self.next_icon
- if @now_cursor_index < @change_number
- @now_cursor_index += 1
- else
- @now_cursor_index = 1
- end
- @mouse.bitmap.clear
- @rect.x = @mouse_width*(@now_cursor_index-1)
- @mouse.bitmap.blt(0, 0, @cache, @rect)
- end
-
- def self.change_cursor_time=(value)
- @change_cursor_time = value
- end
-
- # 下面这些都是适用于游戏里改变一切
- def self.change_number=(value)
- @change_number = value
- end
-
- def self.mouse_width=(value)
- @mouse_width = value
- self.init
- end
-
- def self.mouse_height=(value)
- @mouse_height = value
- self.init
- end
-
- def self.press_x=(value)
- @press_x = value
- end
-
- def self.press_y=(value)
- @press_y = value
- end
-
- def self.name=(value)
- @name = value
- self.init
- end
- end
- end
- end
复制代码 上面那脚本可以配合:
注意:在main之前先要init(update不再支持init)
另外游戏中可以改变那些数据,你知道的,看脚本。
但是发现在PhantomApp里应用会鼠标会卡,于是给我的那个原版:- #==============================================================================
- # ■ MouseEx by一箭烂
- #------------------------------------------------------------------------------
- # 通过增加模组,让图片显示鼠标。
- #==============================================================================
- module MouseEx
-
- @mouse = Sprite.new
- @name = "cursor"
- @press_x = 1
- @press_y = 1
- @mouse_width = 32
- @mouse_height = 32
- @change_number = 2
- @change_cursor_time = 20
-
- def self.init
- @mouse.bitmap = Bitmap.new(@mouse_width,@mouse_height)
- @cache = Bitmap.new(@name)
- @rect = Rect.new(0,0,@mouse.bitmap.width,@mouse.bitmap.height)
- @mouse.z = 9999
- @now_cursor_index = 0
- self.next_icon
- end
-
- def self.update
- Mouse.update
- @mouse.x, @mouse.y = Mouse.pos
- @mouse.x -= @press_x - 1
- @mouse.y -= @press_y - 1
- @mouse.update
- self.next_icon if Graphics.frame_count % @change_cursor_time == 0
- end
-
- def self.next_icon
- if @now_cursor_index < @change_number
- @now_cursor_index += 1
- else
- @now_cursor_index = 1
- end
- @mouse.bitmap.clear
- @rect.x = @mouse_width*(@now_cursor_index-1)
- @mouse.bitmap.blt(0, 0, @cache, @rect)
- end
-
- def self.change_cursor_time=(value)
- @change_cursor_time = value
- end
-
- # 下面这些都是适用于游戏里改变一切
- def self.change_number=(value)
- @change_number = value
- end
-
- def self.mouse_width=(value)
- @mouse_width = value
- self.init
- end
-
- def self.mouse_height=(value)
- @mouse_height = value
- self.init
- end
-
- def self.press_x=(value)
- @press_x = value
- end
-
- def self.press_y=(value)
- @press_y = value
- end
-
- def self.name=(value)
- @name = value
- self.init
- end
- end
复制代码 最后了:
就是Ph::Resource,我要说这个Ph::Resource是会去的整个磁盘路径是吧,
但是RGE(好像)不会兼容地区性语言为繁体的电脑的中文路径,于是那些RGE一遇上那些电脑中文路径,
就会路径乱码导致无法读取文件(我的机子就是一个例子),于是我建议把前面的磁盘路径给删掉。
最后如果不嫌弃的话,我可以帮助一下参与制作PhantomApp。 |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册会员
x
|