else if (triggerEvent == NullificationEffect) {
bool invoked = false;
foreach (ServerPlayer *p, room->getAllPlayers()) {
if (ShefuTriggerable(p, player)) {
room->setTag("ShefuData", data);
if (!room->askForSkillInvoke(p, "shefu_cancel", "data:::nullification") || p->getMark("Shefu_nullification") == 0)
continue;
room->broadcastSkillInvoke("shefu", 2);
invoked = true;
LogMessage log;
log.type = "#ShefuEffect";
log.from = p;
log.to << player;
log.arg = "nullification";
log.arg2 = "shefu";
room->sendLog(log);
CardMoveReason reason(CardMoveReason::S_REASON_REMOVE_FROM_PILE, QString(), "shefu", QString());
int id = p->getMark("Shefu_nullification") - 1;
room->setPlayerMark(p, "Shefu_nullification", 0);
room->throwCard(Sanguosha->getCard(id), reason, NULL);
}
}
return invoked;
@最高最帅的65 @youko1316 这个就是源码吗?设伏的触发时机好像并不是使用牌时,而是无懈生效前


