Project1
标题:
如何做一个注释系统
[打印本页]
作者:
gejhfls
时间:
2010-10-3 19:12
标题:
如何做一个注释系统
就是鼠标放在某张图上的时候下面会出现解释,移开就没了
作者:
429259591
时间:
2010-10-3 19:13
这个的前提是LZ的游戏必须有鼠标脚本系统
作者:
gejhfls
时间:
2010-10-3 19:58
有鼠标系统
作者:
Wind2010
时间:
2010-10-3 20:10
变量1操作:鼠标的屏幕X坐标(能实现么?)
变量2操作:鼠标的屏幕Y坐标(能实现么?)
条件分歧: 变量1在a~b范围
条件分歧: 变量2在c~d范围
显示图片(注释) X坐标为变量1 Y坐标为变量2
除此以外
图片消失
结束
除此以外
图片消失
结束
这样可以么XD
作者:
zhangbanxian
时间:
2010-10-3 20:13
在scene里update中加个鼠标坐标的判断吧,- -b不过这蛮难说清楚,lz先得对脚本有一定的了解...
作者:
gejhfls
时间:
2010-10-3 23:38
懂了,应该可以,虽然脚本不怎么会,但是有了思路写一下应该可以
作者:
fux2
时间:
2010-10-4 09:24
回复
Wind2010
的帖子
鼠标脚本只是直接给索引号赋值,只要在windows_item刷新光标的位置加判断就可以了,但是有可能出现未考虑到的问题........
作者:
逸豫
时间:
2010-10-4 11:33
module TIP
COUNT = 10
end
class Sprite_Tip < Sprite
attr :tip,true
def initialize
super
@tip = ""
@old_tip = @tip
@tip_count = TIP::COUNT
self.z = 99998
self.bitmap = Bitmap.new(640,480)
self.visible = false
end
def update
super
xy = Mouse.get_mouse_pos
if @old_tip != @tip
@old_tip = @tip
self.bitmap.clear
r = self.bitmap.text_size(@tip)
self.bitmap.fill_rect(r, Color.new(0,0,0,128))
self.bitmap.draw_text(0,0,r.width,r.height,@tip)
end
@tip_count -= 1
if @tip_count <= 0
self.visible = true
else
self.visible = false
end
if self.x != xy[0] or self.y != xy[1]
self.x = xy[0]
self.y = xy[1]
@tip_count = TIP::COUNT
end
end
end
class Sprite
alias diyrpg_initialize initialize
def initialize(vp = nil,tip = false)
diyrpg_initialize(vp)
if tip
@tip_sprite = Sprite_Tip.new
end
end
def tip
return @tip_sprite.tip
end
def tip=(v)
@tip_sprite.tip = v
end
alias diyrpg_update update
def update
diyrpg_update
@tip_sprite.update if on? && @tip_sprite.is_a?(Sprite_Tip)
end
def on?
unless self.bitmap.is_a?(Bitmap)
return false
end
xy = Mouse.get_mouse_pos
return xy[0] >= self.x &&xy[0] <= self.x+self.bitmap.width && xy[1] >= self.y && xy[1] <= self.y + self.bitmap.height
end
end
class Sprite_Picture
def initialize(viewport, picture)
super(viewport,true)
@picture = picture
update
end
alias diyrpg_update_s update
def update
diyrpg_update_s
self.tip = @picture.tip
end
end
class Game_Picture
attr :tip,true
alias diyrpg_initialize initialize
def initialize(*arg)
diyrpg_initialize(*arg)
@tip = ""
end
end
复制代码
需要有注释的图片在事件中写:
a = "TEST中文测试"
$game_screen.pictures[图片编号].tip = a
作者:
gg041760
时间:
2010-10-4 17:43
我记得在6R里看过这样的脚本,楼主搜索吧
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1