4.18.2008

重叠NPC问题抛砖引玉

 这篇文是很早以前在yyro上发的。现在整理过来。
 
这个事情由来已久,其实很早前就遇到这个事,一直没重视,前段时间刚弄了下,给大家分享。

原理:

一般服务器都是放在同一个位置上增加一个:hpspall名字的npc,叠在一起。这样ok在计算路线、打开仓库等等的时候,就遇到麻烦了。解决办法很简单,把这个npc忽略过去就行了。

svn 1.9.1以上版本:
打开 src/corelogic.pm
1.6.9及其以下版本:
打开:src/functions.pl

搜索:debug "Target NPC

这样会找到这一段,加上蓝色部分的代码就可以了。
   foreach my $npc (@npcsID) {
    next if !$npc || $npcs{$npc}{'name'} eq '' || $npcs{$npc}{'name'} =~ /Unknown/i || $npcs{$npc}{'name'} =~ /hpspall/;
    if ( $npcs{$npc}{'pos'}{'x'} eq $args->{pos}{'x'} &&
          $npcs{$npc}{'pos'}{'y'} eq $args->{pos}{'y'} ) {
     debug "Target NPC $npcs{$npc}{'name'} at ($args->{pos}{x},$args->{pos}{y}) found.\n", "ai_npcTalk";

附图是效果。
|| $npcs{$npc}{'name'} =~ /hpspall/这个里面的hpspall根据自己的情况改。

至于仓库NPC、重复名字的npc,原理大同小异,我没遇到,所以没研究,哈哈!!

 

没有评论: