设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
12
返回列表 发新帖
楼主: 露丝莱斯
打印 上一主题 下一主题

怎样做到人物在某级之后打某个地方的怪物就没经验了?

 关闭 [复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
2 小时
注册时间
2007-6-7
帖子
48
11
 楼主| 发表于 2008-1-14 05:18:28 | 只看该作者
以下引用deathci于2008-1-13 20:42:30的发言:

如果这样做。  你的事件量应该很大   不过我还是可以教你。

如果你觉得有必要的话。  我应该能做个纯事件+一点小脚本的方式帮你解决这问题。

教我教我~~~~~~```
OS说..,我在茁壮成长.., OS-开发者日记
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
2 小时
注册时间
2007-6-7
帖子
48
12
 楼主| 发表于 2008-1-14 05:19:36 | 只看该作者
以下引用0飘絮0于2008-1-13 20:48:04的发言:


以下引用露丝莱斯于2008-1-13 19:29:18的发言:
1..,这样改跟那个"队员平分经验"会不会冲突?!
2..,能不能写两句例子给我看?!
就1号怪物..,当角色10级以上.,经验为0..,
2号怪物..,当角色20级以上.,经验为0..,
我是脚本盲..,OTZ.,


晕,之前没认真看你的帖子,那个平分经验的脚本我没看过。你要是对上面的脚本都不理解的话,
就忽视我的帖吧。(我回复的帖好象都是不能直接就使用的,非得自己想过改过之后才可能使用)
for enemy in $game_troop.enemies
   unless enemy.hidden # 敌人不是隐藏状态的情况下
      for i in 0...$game_party.actors.size   
          actor = $game_party.actors
          exp = enemy.exp
          ###等级与怪物判断
          if enemy.id == 1 and actor.level >= 10 #如果敌人ID == 1 某角色等级10以上
             exp = 0                             #设(将要增加的)经验为零
          end
          if enemy.id == 2 and actor.level >= 20
             exp = 0
          end
###(上面使用exp = 0 ,是因为我不知道用return可不可以……)
          if actor.cant_get_exp? == false              
             last_level = actor.level
             actor.exp += enemy.exp
             if actor.level > last_level
                @status_window.level_up(i)
             end
           end
       end
    end
end
#######没测试过,上面写的和那个平分经验的肯定不能用,因为不知道将有多少人要分经验
想要知道,要在之前先作个计算,再在加经验的时候 把经验除以人数吧
if enemy.id == 1 and actor.level >= 10 #如果敌人ID == 1 某角色等级10以上
             exp = 0                             #设(将要增加的)经验为零
end   
可以有更多的写法,自己想吧
###看到这里,你要是不知道我在说什么。那忽视吧

基本看懂了..,
但..,
试了一下.,
果然跟那个平分经验的脚本华丽丽的冲突了.,
趴倒..,
OS说..,我在茁壮成长.., OS-开发者日记
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
2 小时
注册时间
2007-6-7
帖子
48
13
 楼主| 发表于 2008-1-14 05:22:24 | 只看该作者
以下引用六芒幽狐于2008-1-13 21:09:24的发言:

我来提供一个简单的办法~

打个比方,地图会遇到的敌人有[烧鸡]~ (你问为什么是烧鸡? 没听说过狐狸爱吃鸡么~ ^_6)
而且杀一只10000经验.

按F9,在[队伍]中的[战斗事件]设置~

条件-敌人[烧鸡]-HP在0%时,
变量操作-角色等级-代入[变量一].
条件分歧-当[变量一]>30时(30就是等级嘛)-EXP减少10000


缺点是占用变量,不过省事很多.

===================

其实个人建议,不用这么麻烦~

你只要把等级间的差距拉大,区域间的等级拉大,就OK了~

比如开始只需要10点经验就可以升级,一个怪2点~
后面要10000经验才能升级,一只高级怪1000点~
这样,就不会有人去打低级怪了


[本贴由作者于 2008-1-13 21:12:57 最后编辑]


角色等级代入..,OTZ..,几十个角色耶...,那样代入会死人的..,

其实这样设置也是为了后续工作.,
就是为了防止越级打怪.,
防止高级的角色带低级的快速升级...,
而并不是为了高级角色打低级怪..,
OS说..,我在茁壮成长.., OS-开发者日记
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
17 小时
注册时间
2007-8-10
帖子
170
14
发表于 2008-1-14 05:28:13 | 只看该作者
不郁闷了。把字和谐一下……
if enemy.id == 1 and actor.level >= 10 #如果敌人ID == 1 某角色等级10以上
   exp = 0                             #设(将要增加的)经验为零
end
######
if enemy.id <= 10 and actor.level >= 10
   exp = 0                             
end
if enemy.id > 10 and enemy.id <= 20 and actor.level >= 20
   exp = 0                             #设(将要增加的)经验为零
end
####想使用这方法就自己看着办吧。觉得不适合的就放弃。连我自己都觉得应该放弃了。
……
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
2 小时
注册时间
2007-6-7
帖子
48
15
 楼主| 发表于 2008-1-14 06:01:20 | 只看该作者
以下引用0飘絮0于2008-1-13 21:28:13的发言:

有点无语。有点郁闷。
if enemy.id == 1 and actor.level >= 10 #如果敌人ID == 1 某角色等级10以上
  exp = 0                             #设(将要增加的)经验为零
end
如果每个怪都象上面那么设计,我绝对会在这个冬天里躲在被窝里,绝不出来见人。丢脸那!哎!
if enemy.id <= 10 and actor.level >= 10
  exp = 0                             
end
if enemy.id > 10 and enemy.id <= 20 and actor.level >= 20
  exp = 0                             #设(将要增加的)经验为零
end
如果是我设置,我更可能把怪物设置得有一点规律,那我可能就不会用上面的句子了。


因为用了怪物图鉴..,为了怪物图鉴排列起来更好看点.,
所以也就没办法在怪物库里把怪物按等级排列了..,
OS说..,我在茁壮成长.., OS-开发者日记
回复 支持 反对

使用道具 举报

Lv1.梦旅人

随缘

梦石
0
星屑
55
在线时间
12 小时
注册时间
2007-12-16
帖子
671
16
发表于 2008-1-14 06:27:07 | 只看该作者
http://rpg.blue/web/htm/news586.htm
http://rpg.blue/web/htm/news736.htm
可以参考这两个脚本来做.这个脚本两差不多....把怪带入状态脚本改一下脚本就行的..就可以的...试试
论坛:
回复 支持 反对

使用道具 举报

Lv1.梦旅人

史上最强粉丝

梦石
0
星屑
50
在线时间
9 小时
注册时间
2007-8-20
帖子
5574

贵宾

17
发表于 2008-1-14 16:19:27 | 只看该作者
…你要做网游吗。防止越级打怪…还高级带低级…
每个角色一个变量是必须的,然后判定,既然怪有等级的话,
如果角色变量大于怪物等级,不参与经验分配…就好拉。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
3 小时
注册时间
2007-12-22
帖子
73
18
发表于 2008-1-14 17:18:20 | 只看该作者

  1.     以下引用六芒幽狐于2008-1-13 21:09:24的发言:

  2.     我来提供一个简单的办法~

  3.     打个比方,地图会遇到的敌人有[烧鸡]~ (你问为什么是烧鸡? 没听说过狐狸爱吃鸡么~ ^_6)
  4.     而且杀一只10000经验.

  5.     按F9,在[队伍]中的[战斗事件]设置~

  6.     条件-敌人[烧鸡]-HP在0%时,
  7.     变量操作-角色等级-代入[变量一].
  8.     条件分歧-当[变量一]>30时(30就是等级嘛)-EXP减少10000


  9.     缺点是占用变量,不过省事很多.

  10.     ===================

  11.     其实个人建议,不用这么麻烦~

  12.     你只要把等级间的差距拉大,区域间的等级拉大,就OK了~

  13.     比如开始只需要10点经验就可以升级,一个怪2点~
  14.     后面要10000经验才能升级,一只高级怪1000点~
  15.     这样,就不会有人去打低级怪了
  16. ********************************************************

  17. 角色等级代入..,OTZ..,几十个角色耶...,那样代入会死人的..,

  18. 其实这样设置也是为了后续工作.,
  19. 就是为了防止越级打怪.,
  20. 防止高级的角色带低级的快速升级...,
  21. 而并不是为了高级角色打低级怪..,
复制代码


呵呵,我在文章末有指出哈~

如果只是为了防止玩家屠杀低级怪,直接拉开等级距离就OK了~


  1. 你只要把等级间的差距拉大,区域间的等级拉大,就OK了~

  2. 比如开始只需要10点经验就可以升级,一个怪2点~
  3. 后面要10000经验才能升级,一只高级怪1000点~
  4. 这样,就不会有人去打低级怪了
复制代码
回复 支持 反对

使用道具 举报

Lv3.寻梦者 (暗夜天使)

精灵族の天使

梦石
0
星屑
1702
在线时间
3038 小时
注册时间
2007-3-16
帖子
33731

开拓者贵宾

19
发表于 2008-1-14 17:57:45 | 只看该作者
以下引用光郎于2008-1-14 8:19:27的发言:

…你要做网游吗。防止越级打怪…还高级带低级…
每个角色一个变量是必须的,然后判定,既然怪有等级的话,
如果角色变量大于怪物等级,不参与经验分配…就好拉。

我建议,好好的利用状态里的“不能获得exp”的功能,你会收获颇丰的。 [LINE]1,#dddddd[/LINE]系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
2 小时
注册时间
2007-6-7
帖子
48
20
 楼主| 发表于 2008-1-14 20:44:10 | 只看该作者
以下引用精灵使者于2008-1-14 9:57:45的发言:


以下引用光郎于2008-1-14 8:19:27的发言:

…你要做网游吗。防止越级打怪…还高级带低级…
每个角色一个变量是必须的,然后判定,既然怪有等级的话,
如果角色变量大于怪物等级,不参与经验分配…就好拉。


我建议,好好的利用状态里的“不能获得exp”的功能,你会收获颇丰的。


果然...,我自己研究出来了..,就是用了这个..,嘿嘿..,结贴能不能给天才般的自己呢?
OS说..,我在茁壮成长.., OS-开发者日记
回复 支持 反对

使用道具 举报

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

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2025-7-27 17:21

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表