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

Project1

 找回密码
 注册会员
搜索
楼主: Eclair
打印 上一主题 下一主题

敌人等级/质量系统 绿版

 关闭 [复制链接]

Lv1.梦旅人

SB們大家好<

梦石
0
星屑
50
在线时间
3 小时
注册时间
2008-1-7
帖子
457
11
发表于 2008-2-4 23:23:57 | 只看该作者
以下引用doranikofu于2008-2-4 0:02:25的发言:

按队列ID来设定的么 感觉不是很方便啊
还是喜欢数据库
貌似用不上 纯支持下
其实最近想淡化等级系统 就是说主角从头到尾升级不提升能力值
这样设定敌人数据也变得简单了

这个问题可以考虑将敌人的等级信息改为从队伍名称读取~
呵呵,绿发渐渐脚本生成机器向咯。。{/wx}
这不是6R,我对自己说。
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

心无天使

梦石
0
星屑
49
在线时间
0 小时
注册时间
2007-12-15
帖子
1016
12
 楼主| 发表于 2008-2-4 23:35:42 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

Lv1.梦旅人

SB們大家好<

梦石
0
星屑
50
在线时间
3 小时
注册时间
2008-1-7
帖子
457
13
发表于 2008-2-4 23:47:52 | 只看该作者
以下引用趙雲于2008-2-4 15:23:57的发言:
以下引用doranikofu于2008-2-4 0:02:25的发言:
这个问题可以考虑将敌人的等级信息改为从队伍名称读取~
呵呵,绿发渐渐脚本生成机器向咯。。
[本贴由作者于 2008-2-4 15:26:11 最后编辑]


等级和质量就是对同种敌人说得哇~
如果设定许多不同的敌人,这个脚本的功能就废掉了。
另外……给偶飞出太阳系外吧!


刚从太阳系外跑回来的某云:
1-99,2-98,3-5
以此为队伍名称,配合邪恶的split方法,是否就能达到目的呢?
可以省却每个队伍添加事件
另外
  def rank=(rank)
    @rank = rank
    recover_all
  end

把这个添加上去,回复的事件就也省掉了{/hx}
这不是6R,我对自己说。
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

心无天使

梦石
0
星屑
49
在线时间
0 小时
注册时间
2007-12-15
帖子
1016
14
 楼主| 发表于 2008-2-4 23:51:02 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

Lv1.梦旅人

SB們大家好<

梦石
0
星屑
50
在线时间
3 小时
注册时间
2008-1-7
帖子
457
15
发表于 2008-2-5 00:13:31 | 只看该作者
  1. #==========================================================================
  2. #    ★敌人等级/质量    By 绿发的Eclair
  3. #   不同质量的敌人每个等级增加多少能力请下面设定哦。
  4. #   填表格就行了,千万不要把英文的半角逗号去掉,不然会出错的。
  5. #   同样,是否显示等级和质量,经验金钱是否增加的设定也在下面完成。
  6. #   冲突性……会有一部分但是不会很高。
  7. #   使用方法:战斗第0回合的时候给敌人输入等级和质量的定义
  8. #   方法 $game_troop.enemies[ID].level = 等级
  9. #        $game_troop.enemies[ID].rank  = 质量
  10. #   ID要从0算起,第一个敌人是0,第二个是1,依此类推。
  11. #   记得设定之后要把敌人完全恢复的。
  12. #==========================================================================
  13. module Touchcat
  14.   LEVEL_ON = true           #是否显示等级
  15.   RANK_ON  = true           #是否显示“质量”*^_^*
  16.   EXP_ON   = true           #是否随质量和等级增加经验
  17.   GOLD_ON  = true           #是否随质量和等级增加金钱
  18.   #表格   HP    SP   强壮  灵巧   速度  魔力   攻击  防御  魔防  闪避 EXP GOLD
  19.   P1 = [  20 ,  20 ,  3   ,  3   ,  3  ,  3  , 0.8  ,0.8 , 0.8 ,  0  , 3  , 4] #废柴怪
  20.   P2 = [  30 ,  30 ,  4   ,  4   ,  4  ,  4  ,  1  ,  1  ,  1  ,  0  , 4  , 6] #较弱怪
  21.   P3 = [  45 ,  45 , 4.5  , 4.5  , 4.5 , 4.5 , 1.1 , 1.1 ,  1  ,  0  , 5  , 8] #一般怪
  22.   P4 = [  66 ,  66 , 5.5  , 5.5  , 5.5 , 5.5 , 1.3 , 1.3 , 1.2 , 0.1 , 7  ,10] #较强怪
  23.   P5 = [  75 ,  75 , 6.5  , 6.5  , 6.5 , 6.5 , 1.4 , 1.4 , 1.3 , 0.1 , 8  ,12] #精英怪
  24.   P6 = [ 120 , 120 , 7.5  , 7.5  , 7.5 , 7.5 , 1.6 , 1.6 , 1.4 , 0.2 , 9  ,15] #首领怪
  25.   P7 = [1000 ,1000 ,  10  ,  10  ,  10 ,  10 , 2.5 , 2.5 , 2.2 , 0.3 ,15  ,20] #变态怪
  26.   PLUS = [P1,P2,P3,P4,P5,P6,P7]
  27.   RANKNAME = ["废柴","较弱","一般","较强","精英","首领","变态"]       #质量名
  28. end

  29. class Game_Troop
  30.   #--------------------------------------------------------------------------
  31.   # ● 设置
  32.   #     troop_id : 敌方队伍 ID
  33.   #--------------------------------------------------------------------------
  34.   def setup(troop_id)
  35.     clear
  36.     @troop_id = troop_id
  37.     @enemies = []
  38.    
  39.    
  40.     for member in troop.members
  41.       index = troop.members.index(member)
  42.       next if $data_enemies[member.enemy_id] == nil
  43.       enemy = Game_Enemy.new(@enemies.size, member.enemy_id)
  44.       enemy.hidden = member.hidden
  45.       enemy.immortal = member.immortal
  46.       enemy.screen_x = member.x
  47.       enemy.screen_y = member.y
  48.       lr = troop.name.split(/~/)[index].split(/,/)
  49.       enemy.level = lr[0].to_i
  50.       enemy.rank  = lr[1].to_i
  51.       @enemies.push(enemy)
  52.     end
  53.     make_unique_names
  54.   end

  55. end


  56. class Game_Enemy < Game_Battler
  57.   attr_accessor :level
  58.   attr_accessor :rank
  59.   #--------------------------------------------------------------------------
  60.   # ● 初始化对像
  61.   #     troop_id     : 循环 ID
  62.   #     member_index : 循环成员的索引
  63.   #--------------------------------------------------------------------------
  64.   alias initialize_touchcat :initialize
  65.   def initialize(troop_id, member_index)
  66.     @level    = 1
  67.     @rank     = 0
  68.     initialize_touchcat(troop_id, member_index)
  69.   end
  70.   
  71.   def rank=(rank)
  72.    @rank = rank
  73.    recover_all
  74.   end
  75.   

  76.   
  77.   
  78.   
  79.   #--------------------------------------------------------------------------
  80.   # ● 获取名称
  81.   #--------------------------------------------------------------------------
  82.   def name
  83.     a = $data_enemies[@enemy_id].name
  84.     a = a + " "+ "LV"+ self.level.to_s if Touchcat::LEVEL_ON == true
  85.     a = a + " "+ "<" + rankname+ ">" if Touchcat::RANK_ON == true
  86.     return a
  87.   end
  88.   def rankname
  89.     return Touchcat::RANKNAME[@rank]
  90.   end
  91.   #--------------------------------------------------------------------------
  92.   # ● 获取基本 MaxHP
  93.   #--------------------------------------------------------------------------
  94.   def base_maxhp
  95.     return $data_enemies[@enemy_id].maxhp+ (@level - 1) * Touchcat::PLUS[@rank][0]
  96.   end
  97.   #--------------------------------------------------------------------------
  98.   # ● 获取基本 MaxSP
  99.   #--------------------------------------------------------------------------
  100.   def base_maxsp
  101.     return $data_enemies[@enemy_id].maxsp+ (@level - 1) * Touchcat::PLUS[@rank][1]
  102.   end
  103.   #--------------------------------------------------------------------------
  104.   # ● 获取基本力量
  105.   #--------------------------------------------------------------------------
  106.   def base_str
  107.     return ($data_enemies[@enemy_id].str  + (@level - 1) * Touchcat::PLUS[@rank][2]).round
  108.   end
  109.   #--------------------------------------------------------------------------
  110.   # ● 获取基本灵巧
  111.   #--------------------------------------------------------------------------
  112.   def base_dex
  113.     return ($data_enemies[@enemy_id].dex  + (@level - 1) * Touchcat::PLUS[@rank][3]).round
  114.   end
  115.   #--------------------------------------------------------------------------
  116.   # ● 获取基本速度
  117.   #--------------------------------------------------------------------------
  118.   def base_agi
  119.     return ($data_enemies[@enemy_id].agi  + (@level - 1) * Touchcat::PLUS[@rank][4]).round
  120.   end
  121.   #--------------------------------------------------------------------------
  122.   # ● 获取基本魔力
  123.   #--------------------------------------------------------------------------
  124.   def base_int
  125.     return ($data_enemies[@enemy_id].int  + (@level - 1) * Touchcat::PLUS[@rank][5]).round
  126.   end
  127.   #--------------------------------------------------------------------------
  128.   # ● 获取基本攻击力
  129.   #--------------------------------------------------------------------------
  130.   def base_atk
  131.     return ($data_enemies[@enemy_id].atk  + (@level - 1) * Touchcat::PLUS[@rank][6]).round
  132.   end
  133.   #--------------------------------------------------------------------------
  134.   # ● 获取基本物理防御
  135.   #--------------------------------------------------------------------------
  136.   def base_pdef
  137.     return ($data_enemies[@enemy_id].pdef + (@level - 1) * Touchcat::PLUS[@rank][7]).round
  138.   end
  139.   #--------------------------------------------------------------------------
  140.   # ● 获取基本魔法防御
  141.   #--------------------------------------------------------------------------
  142.   def base_mdef
  143.     return ($data_enemies[@enemy_id].mdef + (@level - 1) * Touchcat::PLUS[@rank][8]).round
  144.   end
  145.   #--------------------------------------------------------------------------
  146.   # ● 获取基本回避修正
  147.   #--------------------------------------------------------------------------
  148.   def base_eva
  149.     return ($data_enemies[@enemy_id].eva  + (@level - 1) * Touchcat::PLUS[@rank][9]).round
  150.   end
  151.   #--------------------------------------------------------------------------
  152.   # ● 获取 EXP
  153.   #--------------------------------------------------------------------------
  154.   def exp
  155.     if Touchcat::EXP_ON == true
  156.     return ($data_enemies[@enemy_id].exp + (@level - 1) * Touchcat::PLUS[@rank][10]).round
  157.   else
  158.     return $data_enemies[@enemy_id].exp
  159.     end
  160.   end
  161.   #--------------------------------------------------------------------------
  162.   # ● 获取金钱
  163.   #--------------------------------------------------------------------------
  164.   def gold
  165.     if Touchcat::GOLD_ON == true
  166.     return ($data_enemies[@enemy_id].gold + (@level - 1) * Touchcat::PLUS[@rank][11]).round
  167.   else
  168.     return $data_enemies[@enemy_id].gold
  169.     end
  170.   end
  171. end
复制代码




VX化完毕。
队伍名为 99,0~98,0  即 1号level,rank~2号 level,rank  的格式
绿发姐姐不会pia人家吧{/hx}





这不是6R,我对自己说。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
49
在线时间
157 小时
注册时间
2007-12-16
帖子
3454
16
发表于 2008-2-5 00:34:51 | 只看该作者
支持绿发..不过能不能做成VX版的?
回复 支持 反对

使用道具 举报

Lv1.梦旅人

SB們大家好<

梦石
0
星屑
50
在线时间
3 小时
注册时间
2008-1-7
帖子
457
17
发表于 2008-2-5 01:04:35 | 只看该作者
。。。。我是透明的么?
楼上看你的楼上。
这不是6R,我对自己说。
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

心无天使

梦石
0
星屑
49
在线时间
0 小时
注册时间
2007-12-15
帖子
1016
18
 楼主| 发表于 2008-2-7 05:29:08 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
0 小时
注册时间
2008-2-8
帖子
21
19
发表于 2008-2-8 22:48:46 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
2 小时
注册时间
2006-8-29
帖子
673
20
发表于 2008-2-12 08:53:21 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-16 04:14

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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