Skip to content

Commit

Permalink
兴包语音
Browse files Browse the repository at this point in the history
  • Loading branch information
AstralBarrage committed Oct 22, 2024
1 parent 7226343 commit cce12c5
Show file tree
Hide file tree
Showing 61 changed files with 110 additions and 9 deletions.
Binary file added audio/die/jin_jsrg_simazhao.mp3
Binary file not shown.
Binary file added audio/die/jsrg_jiananfeng.mp3
Binary file not shown.
Binary file added audio/die/jsrg_limi.mp3
Binary file not shown.
Binary file added audio/die/jsrg_malong.mp3
Binary file not shown.
Binary file added audio/die/jsrg_simazhao.mp3
Binary file not shown.
Binary file added audio/die/jsrg_wangjun.mp3
Binary file not shown.
Binary file added audio/die/jsrg_wenyang.mp3
Binary file not shown.
Binary file added audio/die/jsrg_zhugedan.mp3
Binary file not shown.
Binary file added audio/skill/jsrgchendu1.mp3
Binary file not shown.
Binary file added audio/skill/jsrgchendu2.mp3
Binary file not shown.
Binary file added audio/skill/jsrgchengliu1.mp3
Binary file not shown.
Binary file added audio/skill/jsrgchengliu2.mp3
Binary file not shown.
Binary file added audio/skill/jsrgciyin1.mp3
Binary file not shown.
Binary file added audio/skill/jsrgciyin2.mp3
Binary file not shown.
Binary file added audio/skill/jsrgciyin3.mp3
Binary file not shown.
Binary file added audio/skill/jsrgcuibing1.mp3
Binary file not shown.
Binary file added audio/skill/jsrgcuibing2.mp3
Binary file not shown.
Binary file added audio/skill/jsrgcuibing3.mp3
Binary file not shown.
Binary file added audio/skill/jsrgcuibing4.mp3
Binary file not shown.
Binary file added audio/skill/jsrgcuibing5.mp3
Binary file not shown.
Binary file added audio/skill/jsrgdangyi1.mp3
Binary file not shown.
Binary file added audio/skill/jsrgdangyi2.mp3
Binary file not shown.
Binary file added audio/skill/jsrgfennan1.mp3
Binary file not shown.
Binary file added audio/skill/jsrgfennan2.mp3
Binary file not shown.
Binary file added audio/skill/jsrgfuzhen1.mp3
Binary file not shown.
Binary file added audio/skill/jsrgfuzhen2.mp3
Binary file not shown.
Binary file added audio/skill/jsrgfuzhen3.mp3
Binary file not shown.
Binary file added audio/skill/jsrgfuzhen4.mp3
Binary file not shown.
Binary file added audio/skill/jsrgjianlou1.mp3
Binary file not shown.
Binary file added audio/skill/jsrgjianlou2.mp3
Binary file not shown.
Binary file added audio/skill/jsrglangan1.mp3
Binary file not shown.
Binary file added audio/skill/jsrglangan2.mp3
Binary file not shown.
Binary file added audio/skill/jsrgliedu1.mp3
Binary file not shown.
Binary file added audio/skill/jsrgliedu2.mp3
Binary file not shown.
Binary file added audio/skill/jsrgqiantun1.mp3
Binary file not shown.
Binary file added audio/skill/jsrgqiantun2.mp3
Binary file not shown.
Binary file added audio/skill/jsrgqiantun3.mp3
Binary file not shown.
Binary file added audio/skill/jsrgqiantun4.mp3
Binary file not shown.
Binary file added audio/skill/jsrgshanzheng1.mp3
Binary file not shown.
Binary file added audio/skill/jsrgshanzheng2.mp3
Binary file not shown.
Binary file added audio/skill/jsrgshanzheng3.mp3
Binary file not shown.
Binary file added audio/skill/jsrgshanzheng4.mp3
Binary file not shown.
Binary file added audio/skill/jsrgweisi1.mp3
Binary file not shown.
Binary file added audio/skill/jsrgweisi2.mp3
Binary file not shown.
Binary file added audio/skill/jsrgweisi3.mp3
Binary file not shown.
Binary file added audio/skill/jsrgxiezheng1.mp3
Binary file not shown.
Binary file added audio/skill/jsrgxiezheng2.mp3
Binary file not shown.
Binary file added audio/skill/jsrgxiezheng_jin_jsrg_simazhao1.mp3
Binary file not shown.
Binary file added audio/skill/jsrgxiezheng_jin_jsrg_simazhao2.mp3
Binary file not shown.
Binary file added audio/skill/jsrgxiongbao1.mp3
Binary file not shown.
Binary file added audio/skill/jsrgxiongbao2.mp3
Binary file not shown.
Binary file added audio/skill/jsrgxunji1.mp3
Binary file not shown.
Binary file added audio/skill/jsrgxunji2.mp3
Binary file not shown.
Binary file added audio/skill/jsrgzhaoxiong1.mp3
Binary file not shown.
Binary file added audio/skill/jsrgzhaoxiong2.mp3
Binary file not shown.
Binary file added audio/skill/jsrgzuozhan1.mp3
Binary file not shown.
Binary file added audio/skill/jsrgzuozhan2.mp3
Binary file not shown.
Binary file added audio/skill/jsrgzuozhan3.mp3
Binary file not shown.
Binary file added audio/skill/jsrgzuozhan4.mp3
Binary file not shown.
60 changes: 51 additions & 9 deletions character/jsrg/skill.js
Original file line number Diff line number Diff line change
Expand Up @@ -10200,6 +10200,7 @@ const skills = {
//贾南风
jsrgshanzheng: {
audio: 4,
logAudio: index => (typeof index === "number" ? "jsrgshanzheng" + index + ".mp3" : 2),
enable: "phaseUse",
usable: 1,
filter(event, player) {
Expand Down Expand Up @@ -10231,14 +10232,21 @@ const skills = {
})
.forResult();
if (resultx.bool) {
player.logSkill("jsrgshanzheng", resultx.targets, null, null, [3]);
player.line(resultx.targets.sortBySeat(), "green");
for (let target of resultx.targets.sortBySeat()) await target.damage();
}
} else if (result.opinion == "black") {
let cards = [];
let cards = [],
targets = [];
for (let color of result.opinions) {
if (result[color]?.length) cards.addArray(result[color].map(i => i[1]));
if (result[color]?.length) {
cards.addArray(result[color].map(i => i[1]));
targets.addArray(result[color].map(i => i[0]));
}
}
targets.remove(player);
player.logSkill("jsrgshanzheng", targets, null, null, [4]);
if (cards.length) {
await player.gain(cards, "giveAuto");
}
Expand All @@ -10260,7 +10268,9 @@ const skills = {
global: "chooseToDebateBegin",
},
filter(event, player) {
return event.list.includes(player) && player.countCards("h") > 1;
if (!event.list.includes(player)) return false;
if (event.fixedResult?.some(key => key[0] == player)) return false;
return player.countCards("h") > 1;
},
async cost(event, trigger, player) {
event.result = await player.chooseCard(get.prompt("jsrgxiongbao"), 2, "本次议事你展示两张手牌").forResult();
Expand Down Expand Up @@ -10302,7 +10312,7 @@ const skills = {
},
//文鸯
jsrgfuzhen: {
audio: 2,
audio: 4,
trigger: {
player: "phaseZhunbeiBegin",
},
Expand Down Expand Up @@ -10334,6 +10344,7 @@ const skills = {
};
} else event.result = { bool: false };
},
logAudio: index => (typeof index == "number" ? "jsrgfuzhen" + index + ".mp3" : 2),
async content(event, trigger, player) {
const targets = event.targets,
silentTarget = event.cost_data;
Expand All @@ -10343,6 +10354,7 @@ const skills = {
.when("useCardAfter")
.filter(evt => evt.getParent() == event)
.then(() => {
player.logSkill("jsrgfuzhen", null, null, null, [get.rand(3, 4)]);
const sum = player
.getHistory("sourceDamage", evt => evt.card && evt.card == trigger.card)
.reduce((num, evt) => {
Expand Down Expand Up @@ -10587,7 +10599,7 @@ const skills = {
},
//李密
jsrgciyin: {
audio: 2,
audio: 3,
enable: ["chooseToUse", "chooseToRespond"],
filter(event, player) {
if (!player.countCards("hes") || player.hasSkill("jsrgciyin_used")) return false;
Expand Down Expand Up @@ -10663,6 +10675,7 @@ const skills = {
return [num, Infinity];
},
audio: "jsrgciyin",
logAudio: () => ["jsrgciyin1.mp3", "jsrgciyin2.mp3"],
ai1(card) {
const suits = _status.event.ciyin_suits;
if (!suits.includes(get.suit(card))) return 15 - get.value(card);
Expand Down Expand Up @@ -10703,9 +10716,10 @@ const skills = {
group: "jsrgciyin_draw",
subSkill: {
draw: {
audio: "jsrgciyin",
logAudio: () => ["jsrgciyin3.mp3"],
trigger: { global: ["cardsDiscardAfter"] },
forced: true,
direct: true,
filter(event, player) {
const evt = event.getParent();
if (evt.name != "orderingDiscard") return false;
Expand Down Expand Up @@ -10837,7 +10851,8 @@ const skills = {
},
//司马昭
jsrgqiantun: {
audio: 2,
audio: 4,
logAudio: index => (typeof index === "number" ? "jsrgqiantun" + index + ".mp3" : 2),
enable: "phaseUse",
usable: 1,
filterTarget(card, player, target) {
Expand Down Expand Up @@ -10876,12 +10891,15 @@ const skills = {
const result3 = await next.forResult();
target.removeGaintag("jsrgqiantun_tag");
if (result3.winner == player) {
player.logSkill("jsrgqiantun", [target], null, null, [3]);
const cards = target.getCards("h", card => result.cards.includes(card));
if (cards.length) await target.give(cards, player);
} else {
player.logSkill("jsrgqiantun", [target], null, null, [4]);
const cards = target.getCards("h", card => !result.cards.includes(card));
if (cards.length) await target.give(cards, player);
}
await player.showHandcards(get.translation(player) + "发动了【谦吞】");
},
ai: {
order: 8,
Expand Down Expand Up @@ -10977,8 +10995,9 @@ const skills = {
derivation: ["jsrgweisi", "jsrgdangyi"],
},
jsrgweisi: {
audio: 2,
audio: 3,
enable: "phaseUse",
logAudio: index => (typeof index === "number" ? "jsrgweisi" + index + ".mp3" : 2),
usable: 1,
filterTarget(card, player, target) {
return target.countCards("h") && target != player;
Expand Down Expand Up @@ -11019,7 +11038,10 @@ const skills = {
.filter(evt => evt.getParent(event.name) == event)
.then(() => {
const cards = trigger.player.getCards("h");
if (cards.length) trigger.player.give(cards, player);
if (cards.length) {
trigger.player.give(cards, player);
player.logSkill("jsrgweisi", [trigger.player], null, null, [3]);
}
});
if (player.canUse(card, target)) await player.useCard(card, target);
},
Expand Down Expand Up @@ -11063,12 +11085,15 @@ const skills = {
player.removeMark("jsrgdangyi", 1, false);
trigger.num++;
},
audio: 2,
mark: true,
intro: {
content: "剩余可发动次数为$",
},
},
jsrgzuozhan: {
audio: 4,
logAudio: () => 2,
trigger: {
global: "phaseBefore",
player: "enterGame",
Expand Down Expand Up @@ -11122,13 +11147,17 @@ const skills = {
group: "jsrgzuozhan_gain",
subSkill: {
gain: {
audio: "jsrgzuozhan",
logAudio: () => ["jsrgzuozhan3.mp3", "jsrgzuozhan4.mp3"],
trigger: {
global: "dieAfter",
},
filter(event, player) {
if (!player.isIn() && event.player != player) return false;
if (!player.getStorage("jsrgzuozhan").includes(event.player)) return false;
return game.hasPlayer(current => current.isIn() && player.getStorage("jsrgzuozhan").includes(current));
},
forceDie: true,
async cost(event, trigger, player) {
event.result = await player
.chooseTarget("坐瞻:令一名“坐瞻”角色获得" + player.countMark("jsrgzuozhan_range") + "张不同牌名的基本牌", true)
Expand Down Expand Up @@ -11158,10 +11187,21 @@ const skills = {
},
},
jsrgcuibing: {
audio: 5,
trigger: {
player: "phaseUseEnd",
},
forced: true,
logAudio(event, player) {
const num = Math.min(
5,
game.countPlayer(current => player.inRange(current))
),
numx = player.countCards("h");
if (num > numx) return 2;
if (num == numx) return ["jsrgcuibing5.mp3"];
return ["jsrgcuibing3.mp3", "jsrgcuibing4.mp3"]
},
async content(event, trigger, player) {
const num = Math.min(
5,
Expand Down Expand Up @@ -11665,6 +11705,7 @@ const skills = {
},
//马隆
jsrgfennan: {
audio: 2,
enable: "phaseUse",
filter(event, player) {
const count = player.getStat("skill").jsrgfennan || 0;
Expand Down Expand Up @@ -11753,6 +11794,7 @@ const skills = {
},
},
jsrgxunji: {
audio: 2,
trigger: { player: "phaseJieshuBegin" },
filter(event, player) {
const targets = player
Expand Down
59 changes: 59 additions & 0 deletions character/jsrg/voices.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,63 @@
export default {
"#jsrgxiezheng1": "烈祖明皇帝乘舆仍出,陛下何妨效之。",
"#jsrgxiezheng2": "陛下宜誓临戎,使将士得凭天威。",
"#jsrgxiezheng_jin_jsrg_simazhao1": "既得众将之力,何愁贼不得平?",
"#jsrgxiezheng_jin_jsrg_simazhao2": "逆贼起兵作乱,诸位无心报国乎?",
"#jsrgqiantun1": "辅国臣之本分,何敢图于禄勋。",
"#jsrgqiantun2": "蜀贼吴寇未灭,臣未可受此殊荣。",
"#jsrgqiantun3": "陛下一国之君,不可使以小性。",
"#jsrgqiantun4": "讲经宴筵,实非治国之道也。",
"#jsrgweisi1": "上者慑敌以威,灭敌以势。",
"#jsrgweisi2": "哼,求存者多,未见求死者也。",
"#jsrgweisi3": "未想逆贼区区,竟然好物甚巨。",
"#jsrgzhaoxiong1": "若得灭蜀之功,何不可受禅为帝。",
"#jsrgzhaoxiong2": "已极人臣之贵,当一尝人主之威。",
"#jsrgdangyi1": "哼!斩首示众,以儆效尤。",
"#jsrgdangyi2": "汝等仍存异心,可见心存魏阙。",
"#jsrg_simazhao:die": "曹髦小儿竟有如此肝胆……我实不甘。",
"#jin_jsrg_simazhao:die": "愿我晋祚,万世不易,国运永昌。",
"#jsrgshanzheng1": "陛下于此道不明,本后且代为理政。",
"#jsrgshanzheng2": "诏命皆从我出,诸君当知谁为这一国之主。",
"#jsrgshanzheng3": "哼!再有犯者,皆有如此人。",
"#jsrgshanzheng4": "尔等罪证,可俱在本宫手中。",
"#jsrgxiongbao1": "不论汝用何法,本后只要死的。",
"#jsrgxiongbao2": "且慢,若事有不获大可行雷霆手段。",
"#jsrgliedu1": "好个贱婢,看来留不得你。",
"#jsrgliedu2": "待本后开膛破肚,一验是子是女。",
"#jsrg_jiananfeng:die": "只恨未早下杀手,致有今日险境。",
"#jsrgciyin1": "今蒙恩诏,寸心难表,然念祖母,诚难上道。",
"#jsrgciyin2": "是臣尽节于陛下之日长,报养刘之日短也。",
"#jsrgciyin3": "臣亡国贱俘,蒙陛下累征不弃,敢不陨首以报。",
"#jsrgchendu1": "愿陛下矜悯愚诚,听臣微志,庶刘侥幸,保卒余年。",
"#jsrgchendu2": "臣无祖母,无以至今日;祖母无臣,无以终余年。",
"#jsrg_limi:die": "人亦有言,有因有缘。官无中人,不如归田。",
"#jsrgfennan1": "幸得陛下厚任,吾当亡命战场,以报所受。",
"#jsrgfennan2": "敌虽万众之数,以吾之谋,易为平之。",
"#jsrgxunji1": "天统之境,岂容丑虏犯边。",
"#jsrgxunji2": "凉州有危,臣者当济。",
"#jsrg_malong:die": "惟愿长守边境,不使百姓为虏所扰。",
"#jsrgchengliu1": "顺流鼓棹,径造三山。",
"#jsrgchengliu2": "今威名已著,当直取敌都。",
"#jsrgjianlou1": "作船七载,以备伐吴。",
"#jsrgjianlou2": "奉诏修舟舰,待机伐孙吴。",
"#jsrg_wangjun:die": "吾功大无匹,但为浑父子所抑而已。",
"#jsrgzuozhan1": "首义难成大事,且待吾之良机!",
"#jsrgzuozhan2": "天下风云变幻,何须急于一时!",
"#jsrgzuozhan3": "将军忠心可鉴,日月昭彰!",
"#jsrgzuozhan4": "昭伯旧党皆为其诛,吾又岂能安坐!",
"#jsrgcuibing1": " 内据淮南,外联孙吴,必可功成!",
"#jsrgcuibing2": "淮南可与吴寇,亦不予汝司马一族!",
"#jsrgcuibing3": "残阳孤城,当鉴吾之丹心!",
"#jsrgcuibing4": "困兽之争,只求玉碎冰摧!",
"#jsrgcuibing5": "再守数日,必得东吴援军!",
"#jsrglangan1": "粮草不至,淮南岌岌可危……",
"#jsrglangan2": "我大义之军,何以至此……",
"#jsrg_zhugedan:die": "大义载天,守忠覆地!",
"#jsrgfuzhen1": "若不拼死一战,何以诛此国贼!",
"#jsrgfuzhen2": "虽为败势,鸯亦有险中取胜之法!",
"#jsrgfuzhen3": "鼓噪而复进之,必取老贼之首!",
"#jsrgfuzhen4": "一鼓乱其心,后必破之!",
"#jsrg_wenyang:die": "恨不得手刃司马老贼,致其有残生之机……",
"#jsrgchaozheng1": "何故争论无休?朝堂自有公论。",
"#jsrgchaozheng2": "今日之言,无是无非,皆为我大汉社稷。",
"#jsrgchaozheng3": "诸卿一心为公,大汉中兴可期!",
Expand Down

0 comments on commit cce12c5

Please sign in to comment.