Skip to content

Commit

Permalink
Add HiZo
Browse files Browse the repository at this point in the history
  • Loading branch information
HisuianZoroark committed Jan 10, 2024
1 parent a88e571 commit b88d3c9
Show file tree
Hide file tree
Showing 6 changed files with 663 additions and 2 deletions.
29 changes: 29 additions & 0 deletions data/mods/gen9ssb/abilities.ts
Original file line number Diff line number Diff line change
Expand Up @@ -330,6 +330,35 @@ export const Abilities: {[k: string]: ModdedAbilityData} = {
flags: {},
},

// HiZo
martyrcomplex: {
shortDesc: "Immune to status and is considered to be asleep. 30% chance to disable when hit.",
name: "Martyr Complex",
onDamagingHitOrder: 1,
onDamagingHit(damage, target, source, move) {
if (!target.hp) {
this.add('-activate', target, 'ability: Martyr Complex');
this.add('-message', `${target.name} will be avenged!`);
target.side.addSlotCondition(target, 'martyrcomplex');
}
},
condition: {
onSwap(target) {
const boosts: SparseBoostsTable = {};
boosts['spe'] = 1;
if (target.getStat('atk', false, true) > target.getStat('spa', false, true)) {
boosts['atk'] = 1;
} else {
boosts['spa'] = 1;
}
this.boost(boosts, target, target, this.effect);
target.side.removeSlotCondition(target, 'martyrcomplex');
},
},
// Permanent sleep "status" implemented in the relevant sleep-checking effects
flags: {},
},

// HoeenHero
misspelled: {
shortDesc: "SpA 1.5x, Accuracy 0.8x, Never misses, only misspells moves.",
Expand Down
26 changes: 26 additions & 0 deletions data/mods/gen9ssb/conditions.ts
Original file line number Diff line number Diff line change
Expand Up @@ -235,6 +235,32 @@ export const Conditions: {[k: string]: ModdedConditionData & {innateName?: strin
this.add(`c:|${getName('havi')}|the nightmare swirls and churns unending n_n`);
},
},
hizo: {
noCopy: true,
onStart() {
// TODO: Confirm nicks later
let friends;
const tier = this.sample(['pic', 'sketch', 'ggsp']);
switch (tier) {
case 'pic':
friends = ['chromate', 'yuki', 'YoBuddyTheBaker', 'zoe', 'jasprose'];
break;
case 'sketch':
friends = ['Eggs', 'career ended', 'ponchlake'];
break;
default:
friends = ['roonie217', 'chromate', 'tkhanh', 'lilyhii'];
break;
}
this.add(`c:|${getName('HiZo')}|/pm ${this.sample(friends)}, ${tier}?`);
},
onSwitchOut() {
this.add(`c:|${getName('HiZo')}|maybe later then`);
},
onFaint() {
this.add(`c:|${getName('HiZo')}|can i try that matchup again?`);
},
},
hoeenhero: {
noCopy: true,
onStart() {
Expand Down
41 changes: 40 additions & 1 deletion data/mods/gen9ssb/moves.ts
Original file line number Diff line number Diff line change
Expand Up @@ -343,7 +343,7 @@ export const Moves: {[k: string]: ModdedMoveData} = {
superegoinflation: {
accuracy: true,
basePower: 0,
category: "Special",
category: "Status",
shortDesc: "User heals 25% HP; Target +2 Atk/SpA + Taunt.",
name: "Super Ego Inflation",
gen: 9,
Expand Down Expand Up @@ -513,6 +513,45 @@ export const Moves: {[k: string]: ModdedMoveData} = {
type: "Ghost",
},

// HiZo
scapegoat: {
accuracy: true,
basePower: 0,
category: "Status",
shortDesc: "User heals 25% HP; Target +2 Atk/SpA + Taunt.",
name: "Scapegoat",
gen: 9,
pp: 5,
priority: 0,
flags: {},
onTryHit(source) {
if (!this.canSwitch(source.side)) {
this.add('-message', `You have noone to blame but yourself.`);
this.faint(source);
return this.NOT_FAIL;
}
},
onTryMove() {
this.attrLastMove('[still]');
},
onPrepareHit(target, source) {
this.add('-anim', source, 'Swords Dance', source);
},
onHit(target, source) {
this.add('message', `A decision must be made.`);
},
slotCondition: 'scapegoat',
// fake switch a la revival blessing
selfSwitch: true,
condition: {
duration: 1,
// reviving implemented in side.ts, kind of
},
secondary: null,
target: "self",
type: "Dark",
},

// HoeenHero
reprogram: {
accuracy: 100,
Expand Down
8 changes: 7 additions & 1 deletion data/mods/gen9ssb/random-teams.ts
Original file line number Diff line number Diff line change
Expand Up @@ -139,6 +139,12 @@ export const ssbSets: SSBSets = {
signatureMove: 'Augur of Ebrietas',
evs: {spa: 252, spd: 4, spe: 252}, nature: 'Timid', teraType: 'Ghost',
},
HiZo: {
species: 'Zoroark-Hisui', ability: 'Martyr Complex', item: 'Heavy-Duty Boots', gender: 'M',
moves: ['Last Respects', 'Revival Blessing', 'Spirit Break'],
signatureMove: 'Scapegoat',
evs: {atk: 252, spa: 4, spe: 252}, nature: 'Naive', teraType: 'Fairy',
},
HoeenHero: {
species: 'Ludicolo', ability: 'Misspelled', item: 'Life Orb', gender: 'M',
moves: [['Hydro Pump', 'Surf'], 'Giga Drain', 'Ice Beam'],
Expand Down Expand Up @@ -390,7 +396,7 @@ export class RandomStaffBrosTeams extends RandomTeams {
this.enforceNoDirectCustomBanlistChanges();

const team: PokemonSet[] = [];
const debug: string[] = []; // Set this to a list of SSB sets to override the normal pool for debugging.
const debug: string[] = ['HiZo']; // Set this to a list of SSB sets to override the normal pool for debugging.
const ruleTable = this.dex.formats.getRuleTable(this.format);
const monotype = ruleTable.has('sametypeclause') ? this.sample([...this.dex.types.names()]) : false;

Expand Down
Loading

0 comments on commit b88d3c9

Please sign in to comment.