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

Project1

 找回密码
 注册会员
搜索

捕捉宠物例程-尕尕兔制作

查看数: 10291 | 评论数: 18 | 收藏 5
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2010-8-13 12:13

正文摘要:

本帖最后由 忧雪の伤 于 2012-1-2 18:56 编辑 捕捉球领取: 捕捉成功会好像死亡那样!捕捉失败就是MISS!默认是50%成功率!自己去状态那里改一下就行了! 给那些想做赛尔号单机版或者口袋妖怪的人 ...

回复

knowlivegive 发表于 2012-12-8 13:53:19
怎么用啊?读不了,我的软件是RPG MAKER VX ACE有没有办法?
大宇宙时代 发表于 2011-12-23 11:53:42
谢谢楼主
学习了非常好的
姬文翔 发表于 2011-9-25 11:29:11
这个……还是用我自己做的好了
迷蓝の海 发表于 2011-9-24 20:12:53
正想要啊~~~设定些可爱的宠物~~
763663412 发表于 2011-8-2 13:28:38
啥?
lj1983nian 发表于 2011-1-26 11:19:24
顶下先…………………………………………………………
英顺的马甲 发表于 2011-1-25 21:07:14
回复 阿猫一号 的帖子

用脚本吧,简单易用,插入main之前即可
  1. class Scene_Battle
  2.   alias old_item_result make_item_action_result
  3.   def make_item_action_result
  4.     old_item_result
  5.     index = @active_battler.current_action.target_index
  6.     target = $game_troop.smooth_target_enemy(index)
  7.     @catch_item = [33]    # 捕捉物品的 ID
  8.     @catch_enemy = [1,2,3,4,5,6,7,8,9,10,11,12,13,14]    # 可被捕捉的怪物的 ID
  9.     if rand(100) < @item.hit and @catch_item.include?(@item.id) and
  10.        $game_party.actors.size < 4 and @catch_enemy.include?(target.id)
  11.       set_pet(target)
  12.       target.hp = 0
  13.     end
  14.   end
  15.   def set_pet(target)
  16.     @pet = RPG::Actor.new
  17.     @pet.id = $data_actors.size
  18.     @pet.name = target.name
  19.     @pet.class_id = 10
  20.     @pet.initial_level = 1
  21.     @pet.final_level = 1 + rand(10)
  22.     @pet.exp_basis = 20 + rand(20)
  23.     @pet.exp_inflation = 20 + rand(20)
  24.     @pet.character_name = target.battler_name
  25.     @pet.character_hue = target.battler_hue
  26.     @pet.battler_name = target.battler_name
  27.     @pet.battler_hue = target.battler_hue
  28.     @pet.parameters = Table.new(6,100)
  29.     for i in [email protected]_level
  30.       @pet.parameters[0,i] = target.maxhp + (i*(target.maxhp/2))
  31.       @pet.parameters[1,i] = target.maxsp + (i*(target.maxsp/2))
  32.       @pet.parameters[2,i] = target.str + (i*(target.str/2))
  33.       @pet.parameters[3,i] = target.dex + (i*(target.dex/2))
  34.       @pet.parameters[4,i] = target.agi + (i*(target.agi/2))
  35.       @pet.parameters[5,i] = target.int + (i*(target.int/2))
  36.     end
  37.     @pet.weapon_id = 0
  38.     @pet.armor1_id = 0
  39.     @pet.armor2_id = 0
  40.     @pet.armor3_id = 0
  41.     @pet.armor4_id = 0
  42.     @pet.weapon_fix = false
  43.     @pet.armor1_fix = false
  44.     @pet.armor2_fix = false
  45.     @pet.armor3_fix = false
  46.     @pet.armor4_fix = false
  47.     $data_actors.push(@pet)
  48.     $game_party.add_actor(@pet.id)
  49.     $game_party.refresh
  50.   end
  51. end
  52. class Scene_Save
  53.   def write_save_data(file)
  54.     characters = []
  55.     for i in 0...$game_party.actors.size
  56.       actor = $game_party.actors[i]
  57.       characters.push([actor.character_name, actor.character_hue])
  58.     end
  59.     Marshal.dump(characters, file)
  60.     Marshal.dump(Graphics.frame_count, file)
  61.     $game_system.save_count += 1
  62.     $game_system.magic_number = $data_system.magic_number
  63.     Marshal.dump($game_system, file)
  64.     Marshal.dump($game_switches, file)
  65.     Marshal.dump($game_variables, file)
  66.     Marshal.dump($game_self_switches, file)
  67.     Marshal.dump($game_screen, file)
  68.     Marshal.dump($game_actors, file)
  69.     Marshal.dump($game_party, file)
  70.     Marshal.dump($game_troop, file)
  71.     Marshal.dump($game_map, file)
  72.     Marshal.dump($game_player, file)
  73.     Marshal.dump($data_actors, file)
  74.   end
  75. end
  76. class Scene_Load
  77.   def read_save_data(file)
  78.     characters = Marshal.load(file)
  79.     Graphics.frame_count = Marshal.load(file)
  80.     $game_system        = Marshal.load(file)
  81.     $game_switches      = Marshal.load(file)
  82.     $game_variables     = Marshal.load(file)
  83.     $game_self_switches = Marshal.load(file)
  84.     $game_screen        = Marshal.load(file)
  85.     $game_actors        = Marshal.load(file)
  86.     $game_party         = Marshal.load(file)
  87.     $game_troop         = Marshal.load(file)
  88.     $game_map           = Marshal.load(file)
  89.     $game_player        = Marshal.load(file)
  90.     $data_actors        = Marshal.load(file)
  91.     if $game_system.magic_number != $data_system.magic_number
  92.       $game_map.setup($game_map.map_id)
  93.       $game_player.center($game_player.x, $game_player.y)
  94.     end
  95.     $game_party.refresh
  96.   end
  97. end
复制代码
hidden
匿名 发表于 2011-1-24 20:55:57
回复 李光兆 的帖子

其实技术上实现所有生物都能捕捉根本不是什么灰常复杂的事情。
在4年之前石器的宠物系统便已相当完善,而实际上偶只用了不到半天的时间就搞定了最初的版本。

基本实现方式:数据库的角色可以重复利用,成长系统可以重写。

参考偶的某个抓壮丁记中的代码。
(貌似又是上古物- -0)

点评

原来2K是蛇君……泪目  发表于 2011-9-25 19:53
发现2K真身 踩尾巴!  发表于 2011-9-25 12:21
咔咔咔咔,蛇君潇洒~  发表于 2011-1-26 08:49
何必用“当年”呢? 偶的石器永远都在更新,而其余的大部分人都只是过客  发表于 2011-1-26 02:14
哈哈...你的语句似乎有奇异性,你就是当年那个2K把..还记得我不? 做石器时代的...  发表于 2011-1-25 21:29
px.凤翔九天 发表于 2011-1-24 20:55:55
我觉得以前的范例包中的捕捉系统更好,是用技能实现捕捉...
貌似比这个简单一点。
拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

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

GMT+8, 2025-4-16 20:10

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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