打印

烽烟四起挂机升刀!

烽烟四起挂机升刀!

//1. 黑色水晶戒指 2. 骷髅戒指  3. 珊瑚戒指  4. 巨龙戒指
//5. 红叶血环  6. 力量戒指   7. 死神手套   8. 魔鬼项链
//9. 蓝翡翠项链  10. 荣耀项链  11. 幽灵项链  12. 勇士项链
//13. 魅力戒指  14. 火玉戒指  15. 紫碧螺  16. 黑檀手镯
//17. 思贝儿手镯  18. 放大镜  19. 愤怒之钟  20. 五彩项链
//21. 震天项链  22. 珍珠戒指  23. 道德戒指  24. 天鸣戒指
//25. 泰坦戒指  26. 三眼手镯  27. 凤凰明珠  28. 竹笛
//29. 莲花宝镜  30. 遗魂项链  31. 银镜项链  32. 巨龙戒指
//33. 金戒指  34. 金手镯  35. 蛇眼戒指   36. 坚固手套
//37. 幽灵手套 38. 技巧项链
array ar_materials=allocate_array(15);
mapping mp_material;

// 1 -> 2 级别的材料
ar_materials[0] = ([
    "jewelrys" : 13, //首饰代码,参考上表
    "jewelrys_a" : "5", //首饰数量
    "irons": "3"  //黑铁数量
]);

// 2 -> 3 级别的材料
ar_materials[1] = ([
    "jewelrys" : 13,
    "jewelrys_a" : "5",
    "irons": "3"
]);

// 3 -> 4 级别的材料
ar_materials[2] = ([
    "jewelrys" : 13,
    "jewelrys_a" : "5",
    "irons": "3"
]);

// 4 -> 5 级别的材料
ar_materials[3] = ([
    "jewelrys" : 13,
    "jewelrys_a" : "6",
    "irons": "3"
]);

// 5 -> 6 级别的材料
ar_materials[4] = ([
    "jewelrys" : 13,
    "jewelrys_a" : "6",
    "irons": "4"
]);

// 6 -> 7 级别的材料
ar_materials[5] = ([
    "jewelrys" : 14,
    "jewelrys_a" : "6",
    "irons": "4"
]);

// 7 -> 8 级别的材料
ar_materials[6] = ([
    "jewelrys" : 14,
    "jewelrys_a" : "7",
    "irons": "4"
]);

// 8 -> 9 级别的材料
ar_materials[7] = ([
    "jewelrys" : 14,
    "jewelrys_a" : "7",
    "irons": "5"
]);

// 9 -> 10 级别的材料
ar_materials[8] = ([
    "jewelrys" : 15,
    "jewelrys_a" : "7",
    "irons": "5"
]);

// 10 -> 11 级别的材料
ar_materials[9] = ([
    "jewelrys" : 15,
    "jewelrys_a" : "8",
    "irons": "5"
]);

// 11 -> 12 级别的材料
ar_materials[10] = ([
    "jewelrys" : 15,
    "jewelrys_a" : "8",
    "irons": "6"
]);

// 12 -> 13 级别的材料
ar_materials[11] = ([
    "jewelrys" : 19,
    "jewelrys_a" : "8",
    "irons": "6"
]);

// 13 -> 14 级别的材料
ar_materials[12] = ([
    "jewelrys" : 19,
    "jewelrys_a" : "9",
    "irons": "6"
]);

// 14 -> 15 级别的材料
ar_materials[13] = ([
    "jewelrys" : 19,
    "jewelrys_a" : "9",
    "irons": "7"
]);

// 15 -> 16 级别的材料
ar_materials[14] = ([
    "jewelrys" : 20,
    "jewelrys_a" : "10",
    "irons": "8"
]);

// 设置炼制内容:魔法、破坏、元素
#define FORGE_TYPE        "元素"
// 设置元素:火、冰、雷、风、神圣、暗黑、幻影
#define FORGE_ATOM        "雷"

// 系统设置 - 一般情况下不需要修改
#define FORGE_NPC_NAME    "啊翔"
#define WEAPON_NPC_NAME   "老胡"
#define PREPARE_CITY      "银杏山谷"
#define FORGE_CITY        "沙巴克城"
#define IRON_NAME         "黑铁"
#define HIT_NPC_NAME      "多多"

// 快速卖掉物品
#define QUICKLY           1
#define GET_QUAL(x)       (((x) + 500) / 1000)

// 不能保存的物品
array excluded_items = ({ "金创药(中)", "金创药(大)", "魔法药(中)",
      "回城卷", "随机传送卷", "金创药(特)"});

mapping forge_cmd=([]);
forge_cmd["破坏"]="@Refine_DC";
forge_cmd["元素"]="@Refine_Atom";
forge_cmd["魔法"]="@Refine_MC";
forge_cmd["火"]="@Refine_Fire";
forge_cmd["冰"]="@Refine_Ice";
forge_cmd["雷"]="@Refine_Light";
forge_cmd["风"]="@Refine_Wind";
forge_cmd["神圣"]="@Refine_Holy";
forge_cmd["暗黑"]="@Refine_Dark";
forge_cmd["幻影"]="@Refine_Pantom";

mapping hit_npc=([]);
hit_npc["多多"]=({211, 183});
hit_npc["老胡"]=({195, 183});
hit_npc["俞公"]=({203, 197});
hit_npc["晶晶"]=({204, 196});
hit_npc["惠莲"]=({214, 128});
hit_npc["双喜"]=({229, 150});
hit_npc["园老板"]=({229, 168});

int weapon_id;       //升级武器的ID
int L_weapon_up=0;   //武器是否可以升级全局变量,末升级=0,能升级=1

int smart_prepare_jewelrys()
{
  mapping mp_npc;
  int weapon_level=(int)(me()["equip"][1]["weapon_level"]-1.2);

  tell_user("炼制武器:开始购买黑铁!");
  if(close_to_npc("jewelry", &mp_npc))
   {
    sell_item(({ ITEM_RING, ITEM_WRIST, ITEM_NECKLACE }), mp_npc, 0, 1);
    talk_to(mp_npc);
    talk_to(mp_npc,1);
    current_menu[3]["action"]= ("@武器类+");
    talk_to(mp_npc,1);
    talk_to(mp_npc,"@goumaiy(黑铁,1100)");
    talk_to(mp_npc,1,ar_materials[weapon_level]["irons"]);
    talk_to(mp_npc,"@进行购买");
    }
    return 1;
}
int take_irons()
{
  mapping mp_npc;
  int weapon_level=(int)(me()["equip"][1]["weapon_level"]-1.2);
   
  tell_user("炼制武器:开始购买首饰!");
  if(close_to_npc("jewelry", &mp_npc))
   {
    talk_to(mp_npc);
    talk_to(mp_npc,1);              
    talk_to(mp_npc,"@首饰类+");
    talk_to(mp_npc,ar_materials[weapon_level]["jewelrys"]);
    talk_to(mp_npc,1,ar_materials[weapon_level]["jewelrys_a"]);
    talk_to(mp_npc,"@进行购买");
   }
  return 1;
}

// 返回身上首饰的 ID,特修完毕以后将重新佩戴这些物品
int get_jewelry_id(string part)
{
  mapping item;

  if (is_mapping(item = me()["equip"][EQUIP_POS(part)]))
    return item["id"];

  return 0;
}

int close_to_forge_npc()
{
  mapping npc;
  if(!goto_city_ex(FORGE_CITY, 0, 0, 6))
  {
    tell_user("炼制武器:不能到达攻城战地域");
    return 0;
  }
        
  if(!close_to_npc("weapon", &npc))
  {        
    tell_user("炼制武器:不能到达老胡旁边\n");
    return 0;
  }
  return 1;
}

void forge()
{
  tell_user("炼制武器:开始炼制武器");
  talk_to(FORGE_NPC_NAME);
  talk_to(FORGE_NPC_NAME, "@Refine_Cmd");
  talk_to(FORGE_NPC_NAME, forge_cmd[FORGE_TYPE]);
  if(FORGE_TYPE=="元素")
    talk_to(FORGE_NPC_NAME, forge_cmd[FORGE_ATOM]);
  
  tell_user("炼制武器:取回武器");
  talk_to(FORGE_NPC_NAME);
  talk_to(FORGE_NPC_NAME, "@GetBack_Cmd");        
}

int forge_hit()
{

  mapping npc;
  close_to_npc("jewelry", &npc);

  unride();        
  walk_close_to(hit_npc[HIT_NPC_NAME][0], hit_npc[HIT_NPC_NAME][1], 1);
                        
  hit(HIT_NPC_NAME);        
  return 1;
}


int auto_forge()
{
  tell_user("炼制武器:开始练刀!");
  weapon_id=me()["equip"][1]["id"];
  if(!goto_city(PREPARE_CITY,0,0))
  {
    tell_user("炼制武器:不能到达银杏山谷");
    return 0;
  }
  if(!smart_prepare_jewelrys())
  {
    tell_user("炼制武器:没有买到合适的黑铁");
    return 0;
  }
  if(!take_irons())
  {
    tell_user("炼制武器:没有取到合适的首饰");
    return 0;
  }  
  if(!close_to_forge_npc())
  {
          tell_user("炼制武器:不能到达练刀师傅身旁");
          return 0;
  }
  forge();
  L_weapon_up=0;
  equip(weapon_id);
  forge_hit();
  return 1;
}

int is_need_forge()
{
  if(me()["equip"][1]["weapon_level"] <= 16.1 &&
     L_weapon_up>2)
      return 1;

  return 0;        
}

void on_acquire_exp(int got_exp, int weapon_exp)
{
  if(got_exp>10&&weapon_exp==0)
  {
    if(L_weapon_up<10)
    {
      if(L_weapon_up==3)
      {
        tell_user("可以炼制武器了");
      }
      L_weapon_up++;
    }
  }
  else
  {
    if(L_weapon_up)
      L_weapon_up=0;
  }
}


int on_prepare_for_quest()
{
  if(is_need_forge())
  {
    // 本次准备设置包裹空余数量为 100 以便升级武器
    keep_bag_spare = 100;
    printf("设置包裹空余数量为 100");
  }

  // 采用缺省流程整备
  return 0;
}

void on_post_prepare_for_quest()
{
  if(is_need_forge())
  {
    auto_forge();
  }
  eapply("左手戒指");
  say("@允许私聊");
}
void on_applied_item(mapping item)
{
  if (item["name"] == "回城卷")
   {
       say("@拒绝私聊");
       return 0;     
   }
}

TOP

为了权限,冲啊!~~~~~~~~~~~~~~~~

TOP

ddddddddddddddddddddd

TOP

顶起来!

TOP

你是个好同志 我准备用

TOP

小冲一下

TOP

继续冲,目标500

TOP

还差5贴了

TOP

还差4帖!!

TOP

还差3贴

TOP

还有2贴

TOP

最后1帖

TOP

权限啊   我倒

TOP

111111111111111111111111

TOP

还有64贴

TOP

当前时区 GMT+8, 现在时间是 2008-11-23 08:47
新ICP备05002317号
Powered by Discuz! 6.0.0 © 2001-2007 Comsenz Inc.
Processed in 0.052459 second(s), 7 queries, Gzip enabled
TOP
清除 Cookies - 联系我们 - 网络游戏代理 - Archiver - - WAP
Designed By Discuz! 百宝箱论坛