查看: 1499|回复: 3

求站上的小地图脚本优化方法

  [复制链接]

御灵的宠物

梦石
12
星屑
8481
在线时间
94 小时
注册时间
2006-12-11
回帖
3101

第2届TG大赛亚军

发表于 2008-3-8 00:03:32 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有账号?注册会员

×
RT,用的是这个
http://rpg.blue/web/htm/news294.htm
一打开,FPS会立刻卡掉8~10
(我做的是ARPG,80X120大小的地图……)
大概看了看,好象是因为是全部都刷新的结果,相当于有两个地图在跑= =
其实我已经修改过一点了,改成只有它可见的时候才refresh……(先前不可见的时候也刷新,不知道作者怎么想的orz)

现在是希望能修改一下它事件的刷新方式,不显示出来的事件不刷新
跟这个脚本原理类似
http://rpg.blue/web/htm/news366.htm


大概就这样吧……

P。S 大概研究下自己也能改……只是最近脑残的厉害,不想想了……
回答的同学不用改脚本,说说卡的原因和修改思路就可以~
版务信息:版主帮忙结贴~
我的Lofter:http://nightoye.lofter.com/

酱油的

梦石
0
星屑
1840
在线时间
2161 小时
注册时间
2007-12-22
回帖
3216

贵宾

发表于 2008-3-8 00:29:49 | 显示全部楼层
說實話,完全沒有頭緒(知力下降)
估計這裏可能會是根本:
   for event in $game_map.events.values
     @mini_sprites.push(Sprite_Mini_Character.new(@viewport, @zoom, 1 , event))
   end        
   for sprite in @mini_sprites
     sprite.update
   end

更新地圖上所有事件的圖象(計算他們的zoom率,類型,描繪圖片)。
但是確定類型那裏用了一個很笨的循环(他居然從頭開始檢查事件中開頭以下的每一行語句==|||,直到找到自己想要的語句爲止。)

就是這句:
     for i in 0...@character.list.size
       if @character.list.parameters[0].is_a?(String)
         if @character.list.parameters[0] == "event"
           @type = 4
           break
         elsif @character.list.parameters[0] == "savepoint"
           @type = 5
           break
         elsif @character.list.parameters[0] == "teleport"
           @type = 6
           break
         elsif @character.list.parameters[0] == "chest"
           @type = 7
           break
         elsif @character.list.parameters[0] == "enemy"
           @type = 1
           break
         elsif @character.list.parameters[0] == "allied"
           @type = 2
           break
         end
       end
     end      
沒有測試,不知道將會花費多少時間於一件40行字數的事件當中。
不過估計消耗不少。


如果可以,最好事件的顯示去掉咩~
不然可以用小圖標代替事件畫面。
原本的事件描畫真是有够天兵……==|||

系统信息:本贴由本区版主认可为正确答案,66RPG感谢您的热情解答~
不做頭像做簽名,看我囧冏有神(多謝山人有情提供 )
回复

使用道具 举报

御灵的宠物

梦石
12
星屑
8481
在线时间
94 小时
注册时间
2006-12-11
回帖
3101

第2届TG大赛亚军

 楼主| 发表于 2008-3-8 01:32:32 | 显示全部楼层
这个脚本就是用小图标代替事件的
但不知道为什么,即使在完全不显示事件图标的时候仍然很慢~{/gg}
我的Lofter:http://nightoye.lofter.com/

回复

使用道具 举报

御灵的宠物

梦石
12
星屑
8481
在线时间
94 小时
注册时间
2006-12-11
回帖
3101

第2届TG大赛亚军

 楼主| 发表于 2008-3-8 02:07:32 | 显示全部楼层
哦哦……原来是这里,等我看看~~~抱LS之
我的Lofter:http://nightoye.lofter.com/

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部