エンペリウムがギルド入ってない or 正規承認取ってなくても
殴れるという事態が発生.
シーズモードでない時には殴れませんでした.
うちだけなのかなー(´・ω・`)
Aurigaフォーラムでも報告されてないし、
ソース色々いじってるからなのかなぁ?と思いつつ
エンペ周辺はいじった記憶ないので新しいAurigaでやりなおすかー
と思って新しいAuriga+新クラDLしたわけですが・・・
結局素Aurigaでエンペの検証するの忘れてそのままソース修正してしまって
コンパイルしたらやっぱり殴れてた!不思議!
他の鯖のGMさんに聞いたら、
検証用MAPだと殴れるよーっていうお話だったのですが
ソース見た限り、gvgのフラグがたってないときはエンペ殴れないようになってる('A`)
検証用MAPにgvgのフラグ立ってたかどうかは聞き忘れたけど!(;^ω^)
とりあえずうちの見方が間違っていなければ
敵か味方の判定部に、正規G承認の処理は書いてなかった.
ダメージ計算の方に色々書いてあったんだけどなぁ・・・(-ω-`*)
とりあえずよくわからない!
Ys鯖は装備ないけど楽しんでます!ヾ(*´∀`*)ノ
battle.c
L5000あたり
// 砦のガーディアンかどうか
if(md->guild_id) {
if(gc) {
for(i = 0; i < sizeof(gc->guardian) / sizeof(gc->guardian[0]); i++) {
if(gc->guardian[i].id == md->bl.id) {
guardian = 1;
break;
}
}
}
}
// GvG時間外
/* if(!map[ss->m].flag.gvg) {
// ガーディアンと念のためエンペは味方
if(md->class_ == 1288 || guardian)
return 1;
// それ以外は敵
return 0;
}
*/
/* ここから flag.gvg がある処理 */
//------------------追加-------------by mame-------
// GvG時間外
if(!map[ss->m].flag.gvg) {
// ガーディアンと念のためエンペは味方
if(md->class_ == 1288 || guardian)
return 1;
// それ以外は敵
return 0;
}else{
// ガーディアンと念のためエンペは味方
if(md->class_ == 1288 || guardian )
if(g == NULL)
return 1;
else if (guild_checkskill(g,GD_APPROVAL) <= 0)
return 1;
}
//---------------------ここまで--------------------
// ギルド無しPCは全部敵
/* if(g == NULL)
return 0;
*/
// 自分のギルドか同盟ギルド砦
if(gc) {
if(g->guild_id == gc->guild_id || guild_check_alliance(md->guild_id, sd->status.guild_id, 0)) {
// エンペとガーディアンは味方
if(md->class_ == 1288 || guardian)
return 1;
// それ以外のバイオプラント、スフィアマインなどは敵(攻撃可能)
return 0;
}
}
// 他人の砦、砦以外のGvGモードなら全部敵
return 0;
}
if(ss->type == BL_MOB && target->type == BL_PC) {
return 0; // MOB→PCなら敵
}
if(ss->type == BL_PET && target->type == BL_MOB) {
struct pet_data *pd = (struct pet_data*)ss;
struct mob_data *md = (struct mob_data*)target;
int mode = mob_db[pd->class_].mode;
int race = mob_db[pd->class_].race;
if(mob_db[pd->class_].mexp <= 0 && !(mode&0x20) && (md->sc.option & 0x06 && race != RCT_INSECT && race != RCT_DEMON) ) {
return 1; // 失敗
} else {
return 0; // 成功
}
}
// ギルド無しPCは全部敵
/* if(g == NULL)
return 0;
*/
ここもしかしたらこめあう外した方がいいかもしれない(-ω-`*)
要検証