⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 raw_sample.c

📁 百宝箱3.27传奇3GQ外挂.支持私服.
💻 C
字号:
// Written by BBX workgroup
// Release: 2004/5/20
// 功能:无,演示部分消息函数

// 获得战斗经验/武器经验
void on_acquire_exp(int got_exp, int weapon_exp)
{
    printf("on_acquire_exp: got_exp = %d  weapon_exp = %d\n", got_exp, weapon_exp);
}

// 成功使用了和一个物品
void on_applied_item(mapping item)
{
    printf("on_applied_item: %s %d\n", item["name"], item["amount"]);
}

// 被攻击
void on_attack_by(mapping attacker, int damaged)
{
    printf("on_attack_by: %s %d\n", attacker["name"], damaged);
}

// 他人攻击信息
void on_attack_info(mapping attacker, mapping victim, int damaged)
{
    printf("on_attack_info: %s %s %d\n", attacker["name"], victim["name"], damaged);
}

// 当踩到了一个物品时,判断该物品是否需要拾取,返回 -1 表示不需要拾
// 取,返回 0 表示采用原先的判断流程
int on_auto_get(mapping ob)
{
    printf("on_auto_get: %s %d %d\n", ob["name"], ob["x"], ob["y"]);
    return 0;
}

// 包裹里的物品数量刷新了
void on_carried_updated(mapping item, int amount)
{
    printf("on_carried_updated: %s %d\n", item["name"], amount);
}

// 人物出现
void on_char_appear(mapping ob)
{
    printf("on_char_appear: %s\n", ob["name"]);
}

// 人物死亡
void on_char_died(mapping ob)
{
    printf("on_char_died: %s\n", ob["name"]);
}

// 人物消失(离开视野)
void on_char_disappeared(mapping ob)
{
    printf("on_char_disappeared: %s\n", ob["name"]);
}

// 物品出现
void on_item_appear(mapping item)
{
    printf("on_item_appear: %s\n", item["name"]);
}

// 物品消失(离开视野)
void on_item_disappeared(mapping item)
{
    printf("on_item_disappeared: %s\n", item["name"]);
}

// 加入了小组,返回非零表示不理会,返回 0 表示采用原先的处理流程
int on_join_team(string member_leader, mapping members)
{
    printf("on_join_team: leader: %s  members: %d\n", member_leader, sizeof(members));
    return 0;
}

// 你进入了游戏
void on_enter_world()
{
    printf("on_enter_world\n");
}

// 你进入了某个区域
void on_enter_zone()
{
    printf("on_enter_zone\n");
}

// 前往练功地点
// 如果定义了这个函数,则系统自动采用这个函数前往练功地点
// 返回 0 表示采用预定的流程前往练功地点,返回 -1 表示无法前
// 往练功地点,返回 1 表示成功到达了练功地点
int on_go_to_pz(string rzone, int x, int y)
{
    printf("on_goto_pz: %s %d, %d\n", rzone, x, y);
    return 0;
}

// 交易时对方放上了物品
// 参数 id 表示是放上物品的ID
// 参数 item 包含了放上的物品的详细信息
void on_got_peer_trade_item(int id, mapping item)
{
    printf("on_got_peer_trade_item: %d, %s\n", id, item["name"]);
}

// 交易时对方放上了金钱
void on_got_peer_trade_money(int money)
{
    printf("on_got_peer_trade_money: %d\n", money);
}

// 交易成功
void on_finish_trade()
{
    printf("on_finish_trade");
}

// 你离开了游戏
void on_leave_world()
{
    printf("on_leave_world\n");
}

// 怪物消失了(离开视野)
void on_monster_disappeared(mapping ob)
{
    printf("on_monster_disappeared: %s\n", ob["name"]);
}

// 获得了新物品
void on_new_carried(mapping item)
{
    printf("on_new_carried: %s\n", item["name"]);
}

// 准备成功
void on_post_prepare_for_quest()
{
    printf("on_post_prepare_for_quest\n");
}

// 开始准备,返回 1 表示准备成功,返回 -1 表示准备失败,返回 0 表示
// 使用系统原来的准备流程。
int on_prepare_for_quest()
{
    printf("on_prepare_for_quest\n");
    return 0;
}

// 巡航下一地图,返回 0 表示采用系统预定的流程,返回 1 表示设置了下
// 一练功地图的信息
// 关于设置练功地图参见 on_update_pz
int on_next_pz()
{
    printf("on_next_pz");
    return 0;
}

// 接收到用户消息,返回非零表示消息已被处理,返回 0 表示采用系统原先
// 的处理流程
int on_receive_message(string org, string msg)
{
    printf("on_receive_message\n");
    return 0;
}

// 交易时你放上了金钱
// 参数 put_money 表示你放上的金钱
// 参数 carried_money 表示你包裹中剩下的金钱
void on_refresh_trade_money(int put_money, int carried_money)
{
    printf("on_refresh_trade_money: %d, %d\n", put_money, carried_money);
}

// 工作时(边跑边打或辅助队长)定期扫描
// 注意:在此函数中不要执行太久,以免影响正常工作,如果需要长时间的
// 操作(如2秒以上),应该另外创建线程处理。
// 可阻塞
void on_scan_all()
{
    printf("on_scan_all\n");
}

// 处理系统消息
// 系统消息主要是游戏时服务器以文字方式传送下来的一些消息,如果技能
// 生效的时间,本人死亡信息等。
// 可阻塞
void on_scan_system_msg(string msg)
{
    printf("on_scan_systekm_msg: %s\n", msg);
}

// 练功时选择下一巡航点
// 如果返回二元整数数组,表示指明了下一巡航点,否则系统自动选择。
// 例如:返回 ({ 100, 200 }) 表示练功时跑到 100, 200 位置
mixed on_select_new_position()
{
    printf("on_select_new_position\n");
}

// 开始和他人交易
// 参数 peer_name 是对方的名字
// 不可阻塞
void on_start_trade(string peer_name)
{
    printf("on_start_trade: %s\n", peer_name);
}

// 物品出现时判断是否需要拾取该物品,返回 -1 表示不打算拾取,返回 0
// 表示采用系统原先的判定流程
int on_to_pickup(mapping item)
{
    printf("on_to_pickup: %s\n", item["name"]);
    return 0;
}

// 交易被取消
// 注意,当对方关闭交易窗口是服务器并不会传送交易被取消的消息给你,
// 不可阻塞
void on_trade_cancelled()
{
    printf("on_trade_cancelled\n");
}

// 交易失败了
// 失败原因在服务器传送来的系统信息中有提示
// 不可阻塞
void on_trade_failed()
{
    printf("on_trade_failed\n");
}

// 选择练功地点,expected 表示期望的练功地点,如果为零表示随机选择,
// 返回 1 表示成功选择了地点,返回 0 表示采用预定的流程
// 函数返回 1 时需要设置变量:
// rz - 练功地点名称
// rx, ry - 练功目的地
// is_cruise - 如果为 1 表示巡航,如果为 0,表示不巡航
// rr - 数组,包括一组坐标,只有 is_cruise 为 1 时有效
int on_update_pz(mixed expected)
{
    printf("on_update_pz: %O\n", expected);
    return 0;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -