Project1
标题:
白痴问题:如何实现显示字符类似打字效果
[打印本页]
作者:
kula1900
时间:
2009-7-23 17:37
标题:
白痴问题:如何实现显示字符类似打字效果
本帖最后由 凌辰 于 2009-7-28 23:22 编辑
#===========================================================
# ■ Window_Instant_Messaging
#------------------------------------------------------------------------------
# 信息窗口。Instant_Messaging
#===========================================================
class Window_Instant_Messaging < Window_Selectable
# 显示行数数列
INSTANT_SIZE = 10
#--------------------------------------------------------------------------
# ● 初始化对像
#--------------------------------------------------------------------------
def initialize
# 设置窗口坐标,和窗口大小
super(0, 250, 330, 240)
# 绝对透明处理
self.opacity = 0
# 激活处理
self.active = false
self.index = 0
end
#--------------------------------------------------------------------------
# ● 刷新
#--------------------------------------------------------------------------
def refresh(count = 0)
if $old_messaging.size >= 0
# 如果hash表的键值数值大于显示的所能容下的行数
if $old_messaging.size > INSTANT_SIZE
# 计算多出来的部分
@size = INSTANT_SIZE
@count = $old_messaging.size
@count -= INSTANT_SIZE
else
# 如果没有超过…就返回0
@size = $old_messaging.size
@count = 0
end
self.contents = Bitmap.new(width - 32, INSTANT_SIZE * 16)
# 清理不需要的字符串--清楚多出来的字
self.contents.clear
@count_no = 0
# 循环处理能够显示的
for i in 0...@size
if i + count + @count >= 0
@no = i + count + @count
# 变量 = 键值
item = $old_messaging[@no]
x = 0
y = (i - @count_no) * 16 # ----显示"常量:INSTANT_SIZE"行,不介意很大
# 显示键值
self.contents.font.color = Color.new(-170,-170,-170,255)
self.contents.font.size = 14
self.contents.draw_text(x + 6, y + 1, self.contents.text_size(item).width, 16, item, 0)
self.contents.font.color = normal_color
self.contents.draw_text(x + 5, y, self.contents.text_size(item).width, 16, item, 0)
end
end
end
end
#--------------------------------------
# ● 刷新光标
#--------------------------------------
def update_cursor_rect
# 光标位置不满 0 的情况下
if @index < 0
self.cursor_rect.empty
return
end
# 获取当前的行
row = @index / @column_max
# 当前行被显示开头行前面的情况下
if row < self.top_row
# 从当前行向开头行滚动
self.top_row = row
end
# 当前行被显示末尾行之后的情况下
if row > self.top_row + (self.page_row_max - 1)
# 从当前行向末尾滚动
self.top_row = row - (self.page_row_max - 1)
end
# 计算光标的宽
cursor_width = self.width / @column_max - 32
# cursor_width = 0
# 计算光标坐标
x = @index % @column_max * (cursor_width + 32)
y = @index / @column_max * 32 - self.oy
# 更新国标矩形
self.cursor_rect.set(x, y, self.width - 32, 96)
end
end
复制代码
自己写的~可是一直很想让他实现打字效果[line]1[/line]
请将脚本框在代码框内。
作者:
IamI
时间:
2009-7-23 17:46
字符逐字逐字的描绘。每帧描绘一个字。
作者:
青羽
时间:
2009-7-23 20:32
提示:
作者被禁止或删除 内容自动屏蔽
作者:
cfancy
时间:
2009-7-25 12:54
这个参考网上的FUki对话或真。对话之类的应该可以研究出来吧。。。。。
我不知道,没深入过,没发言权~
作者:
风中承诺
时间:
2009-7-28 15:38
可以使用对话加强
作者:
tommay
时间:
2009-7-28 17:05
这标题看了很不爽。。。不知LZ这算阿Q精神吗?
——————————————
回正题,主站搜索“对话加强”
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1