fish

Private

Content

182 lines
{=(modpg):781689754122321970}
{=(playground):456625369974308866}
{=(admin):219776153613893632}
{=(cooldownRole):733191435146231939}

{=(getroles):{join(,):458640839371915273 458640516515495936 458640713727475723 458640109181468683 458640621578485761 458640769084030976 458640429320241174 445066659800023050}}

{=(reqMsg):**{user(name)}**, get at least one role from <#445066482502729728> to `!fish`!}
{=(eventClosedMsg):**{user(name)}**, this event is now closed. Thank you for playing! For more information, check: <#443204795910848512>.}

{require({eventClosedMsg}):{modpg}}

{=(COMMENT):Duration in seconds}
{=(cooldownDuration):60}

{=(COMMENT):Exclusive role to give upon collecting all the fishes during April 1st 2022's Fishing Event!}
{=(roleReward):956066658299019334}

{=(COMMENT):Blocks aliases}
{=(r):replace}
{=(j):join}
{=(i):index}
{=(ct):contains}
{=(um):{user(mention)}}
{=(urid):{user(roleids)}}
{=(fb):None}
{=(pl):&$!}
{=(nl):
}

{=(l1):{list(0):{{j}(~):{lower:{args}}}}}

{=(options):collections inventory caught dex {fb} !}
{=(option):{options({{i}({l1}):{{r}({l1},. {l1} .):{options}}})}}

{=(isCheckingCollection):{in(false):{{ct}({fb}):{option}}}}

{=(isOnCooldown):{{ct}({cooldownRole}):{urid}}}

{=(COMMENT):Fishes, rarities and % catch chance}
{=(common):Bream Gudgeon~<:Common1Star:737958624177160203>~60}
{=(uncommon):Carp Loach~<:Uncommon2Stars:737958634209673267>~35}
{=(rare):Bass Piranha~<:Rare3Stars:737958638894841917>~4}
{=(veryrare):Koi Rainbow_Fish~<:VeryRare4Stars:737958640010657833>~1}

{=(randomRarity):{#:{common(0):~}|common~{uncommon(0):~}|uncommon~{rare(0):~}|rare~{veryrare(0):~}|veryrare}}

{=(rarityEmoji):{{randomRarity}(-1):~}}

{=(rarityChance):{{randomRarity}(0):~}}

{=(randomFish):{{r}(_, ):{#:{{j}(~):{{randomRarity}(1):~}}}}}

{=(Bream):<:Bream:737975203023290418>~956028016268546088}
{=(Gudgeon):<:Gudgeon:728531524470833173>~956028125546958949}
{=(Carp):<:Carp:728529853363650610>~956028164361048124}
{=(Loach):<:Loach:737983153699946538>~956028197110181968}
{=(Bass):<:Bass:728529467856912414>~956028223542661130}
{=(Piranha):<:Piranha:738001191841169460>~956028247823515709}
{=(Koi):<:Koi:738013119628181596>~956028293960859658}
{=(Rainbow Fish):<:Rainbow:738013772500959242>~956028317461544970}


{=(hasBream):{in({Bream(2):~}):{urid}}}
{=(hasGudgeon):{in({Gudgeon(2):~}):{urid}}}
{=(hasCarp):{in({Carp(2):~}):{urid}}}
{=(hasLoach):{in({Loach(2):~}):{urid}}}
{=(hasBass):{in({Bass(2):~}):{urid}}}
{=(hasPiranha):{in({Piranha(2):~}):{urid}}}
{=(hasKoi):{in({Koi(2):~}):{urid}}}
{=(hasRainbow Fish):{in({Rainbow Fish(2):~}):{urid}}}

{=(COMMENT):Formats the fish collection when willing to check for it}
{=(fishCollection):{if({hasRainbow Fish}==true):{Rainbow Fish(1):~}~Rainbow_Fish~{veryrare(2):~}} {if({hasKoi}==true):{Koi(1):~}~Koi~{veryrare(2):~}} {if({hasPiranha}==true):{Piranha(1):~}~Piranha~{rare(2):~}} {if({hasBass}==true):{Bass(1):~}~Bass~{rare(2):~}} {if({hasLoach}==true):{Loach(1):~}~Loach~{uncommon(2):~}} {if({hasCarp}==true):{Carp(1):~}~Carp~{uncommon(2):~}} {if({hasGudgeon}==true):{Gudgeon(1):~}~Gudgeon~{common(2):~}} {if({hasBream}==true):{Bream(1):~}~Bream~{common(2):~}}}

{=(fishCollection):{{r}(_, ):{{r}(~, ):{{r}( ,{nl}):{{j}( ):{fishCollection}}}}}}

{=(fishChecks):{hasBream} {hasGudgeon} {hasCarp} {hasLoach} {hasBass} {hasPiranha} {hasKoi} {hasRainbow Fish}}

{=(fishCaughtCount):{{i}({pl}):{{r}(false,):{fishChecks} {pl}}}}

{=(COMMENT):Returns true if the user has fished at least once.}
{=(hasFished):{in(true):{fishChecks}}}

{=(fishEmoji):{{randomFish}(1):~}}
{=(fishRole):{{randomFish}(0):~}}

{=(hasCurrentlyCaughtFishRole):{in({fishRole}):{urid}}}

{=(maxFish):8}

{=(COMMENT):Checks if the current fishing command completes the fish collection!}
{=(isCompletingCollection):{in(true true):{{ct}({maxFish}):{m:trunc({fishCaughtCount}+1)}} {{ct}(false):{hasCurrentlyCaughtFishRole}}}}

{=(fishFormatted):{fishEmoji} {randomFish}}

{=(role.New):956051068473716776}
{=(isNew):{in({role.New}):{urid}}}

{=(e.quest):<:quest:956038003317415986>}
{=(e.questComplete):<a:questcomplete:956070969422774363>}
{=(e.bait):<:bait:735914686071046326>}
{=(e.rod):<:rod:728573914376306751>}

{=(COMMENT):Embed and Output Management}
{=(title.fisherman):Laroc Feer}
{=(title.casting):Casting line...}
{=(title.cooldown):}
{=(title.collection):Fish Collection [{fishCaughtCount}/{maxFish}]}
{=(em.title):{title.{if({isCheckingCollection}==true):collection|{if({isOnCooldown}==true):cooldown|{if({isNew}==true):casting|{if({hasFished}==false):fisherman|casting}}}}}}

{=(fishingEmoji):🎣}
{=(msg.caught):{fishingEmoji} **You caught 1 {fishFormatted} {rarityEmoji} {um}!**{if({isNew}==true):{nl}{nl}> 💡 Use `!fish collection` to see your currently-collected fishes!}{if({hasCurrentlyCaughtFishRole}==true):{nl}{nl}🙌 You've already collected that fish and prefer to release it into the water.}{if({isCompletingCollection}==true):{nl}{nl}> {e.questComplete} Congratulations {um}! You have just caught the ultimate fish in your collection!}}
{=(msg.neverFished):Ahoy Matey!
It seems like you've never fished around here before.
Hah, that feel when you catch your first big fish... It reminds me of the good ol' days...
There are so many to collect...!

Oh, you're interested, {um}? Give me a second and I will give you one of the Fishing Rods I have to get started...
... There! {e.rod}

I will be watching you over time and give you an exclusive reward if you collect all the fish that swim around here!
{e.quest} Are you up to the challenge?

> 💡 Use `!fish` again to start collecting your first fish!}

{=(futureUnix):{m:trunc({unix}+{cooldownDuration})}}
{=(msg.cooldown):{e.bait} {um}, you need to wait a little bit before another fish can bite onto your hook.
Replenish your bait stock and fish again <t:{futureUnix}:R>.}
{=(msg.collection):{um}{nl}{fishCollection}{if({isCompletingCollection}==true):{nl}{nl}> {e.questComplete} {um}, you have collected all the fish and are considered a true <@&{roleReward}>!}}
{=(msg.noFishCollected):{um}, you have not collected any fish yet!}


{=(em.desc):{msg.{and({isCheckingCollection}==true|{fishCaughtCount}==0):noFishCollected|{if({isCheckingCollection}==true):collection|{if({isOnCooldown}==true):cooldown|{if({isNew}==true):caught|{if({hasFished}==false):neverFished|caught}}}}}}}

{=(img.fisherman):https://cdn.discordapp.com/attachments/337040974415003649/956045362458681344/unknown.png}
{=(img.pond):https://cdn.discordapp.com/attachments/337040974415003649/956048733013934150/pond1.png}
{=(img.bucket):https://cdn.discordapp.com/attachments/337040974415003649/956059985098457148/bucket.png}
{=():}
{=(em.thumbnail):{{if({isCheckingCollection}==true):img.bucket|{if({isOnCooldown}==true):img.pond|{if({isCompletingCollection}==true):img.fisherman|{if({isNew}==true):|{if({hasFished}==false):img.fisherman}}}}}}}



{=(COMMENT):Embed Color Management}
{=(clr.quest):F9C806}
{=(clr.caught):0062FF}
{=(clr.cooldown):EFB4BB}
{=(clr.collection):65B9E9}
{=(em.color):{clr.{if({isCheckingCollection}==true):collection|{if({isOnCooldown}==true):cooldown|{if({isNew}==true):caught|{if({isCompletingCollection}==true):quest|{if({hasFished}==false):quest|caught}}}}}}}
{=(em.color):#{{r}(#,):{em.color}}}
{embed(color):{em.color}}


{=(COMMENT):Command Execution Management}
{=(cmd.applyCooldown):c:temprole {user(id)} {cooldownRole} {cooldownDuration}s}
{=(cmd.giveFishRole):c:role custom {user(id)} +{fishRole} -{role.New} {if({isCompletingCollection}==true):+{roleReward}}}
{=(cmd.giveNewRole):c:role add {user(id)} {role.New}}
{silence}

{=(COMMENT):Gives the "New" role to a player that never fished but just got the fisherman's dialog for the first time}
{{{and({isNew}==false|{hasFished}==false):cmd.giveNewRole}}}

{=(COMMENT):Applies the cooldown if the user is a new player (has passed the NPC dialog for the first time), or if they already caught at least 1 fish}
{{{if({isCheckingCollection}==true):|{and({isNew}==true|{isOnCooldown}==false):cmd.applyCooldown|{and({hasFished}==true|{isOnCooldown}==false):cmd.applyCooldown}}}}}

{=(COMMENT):Gives the currently-caught fish role if the player is new or if they have already fished and didn't already have the currently-caught fish role}
{{{and({hasFished}==false|{isNew}==false):|{and({isCheckingCollection}==false|{hasCurrentlyCaughtFishRole}==false|{isOnCooldown}==false):cmd.giveFishRole}}}}
{override}

{=(debug):__Debug:__
randomRarity: `{randomRarity}`
randomFish: `{randomFish}`

fishRole: `{fishRole}`

fishFormatted: {fishFormatted}

**Checks**
isNew: `{isNew}`
isOnCooldown: `{isOnCooldown}`
hasCurrentlyCaughtFishRole: `{hasCurrentlyCaughtFishRole}
}

Embed

1 line
{"color": 25343, "title": "{em.title}", "thumbnail": {"url": "{em.thumbnail}"}, "description": "{em.desc}"}
Raw JSON
{
  "id": 1340251,
  "created_at": "2022-03-23T02:54:36.000Z",
  "tag_name": "fish",
  "nsfw": false,
  "owner_id": "149926720114262016",
  "uses": 21636,
  "description": null,
  "restricted": false,
  "shared": false,
  "deleted": false,
  "safe": "",
  "hidden": false,
  "guild_id": "186980582863929345",
  "sharer": "149926720114262016",
  "content": "{=(modpg):781689754122321970}\n{=(playground):456625369974308866}\n{=(admin):219776153613893632}\n{=(cooldownRole):733191435146231939}\n\n{=(getroles):{join(,):458640839371915273 458640516515495936 458640713727475723 458640109181468683 458640621578485761 458640769084030976 458640429320241174 445066659800023050}}\n\n{=(reqMsg):**{user(name)}**, get at least one role from <#445066482502729728> to `!fish`!}\n{=(eventClosedMsg):**{user(name)}**, this event is now closed. Thank you for playing! For more information, check: <#443204795910848512>.}\n\n{require({eventClosedMsg}):{modpg}}\n\n{=(COMMENT):Duration in seconds}\n{=(cooldownDuration):60}\n\n{=(COMMENT):Exclusive role to give upon collecting all the fishes during April 1st 2022's Fishing Event!}\n{=(roleReward):956066658299019334}\n\n{=(COMMENT):Blocks aliases}\n{=(r):replace}\n{=(j):join}\n{=(i):index}\n{=(ct):contains}\n{=(um):{user(mention)}}\n{=(urid):{user(roleids)}}\n{=(fb):None}\n{=(pl):&$!}\n{=(nl):\n}\n\n{=(l1):{list(0):{{j}(~):{lower:{args}}}}}\n\n{=(options):collections inventory caught dex {fb} !}\n{=(option):{options({{i}({l1}):{{r}({l1},. {l1} .):{options}}})}}\n\n{=(isCheckingCollection):{in(false):{{ct}({fb}):{option}}}}\n\n{=(isOnCooldown):{{ct}({cooldownRole}):{urid}}}\n\n{=(COMMENT):Fishes, rarities and % catch chance}\n{=(common):Bream Gudgeon~<:Common1Star:737958624177160203>~60}\n{=(uncommon):Carp Loach~<:Uncommon2Stars:737958634209673267>~35}\n{=(rare):Bass Piranha~<:Rare3Stars:737958638894841917>~4}\n{=(veryrare):Koi Rainbow_Fish~<:VeryRare4Stars:737958640010657833>~1}\n\n{=(randomRarity):{#:{common(0):~}|common~{uncommon(0):~}|uncommon~{rare(0):~}|rare~{veryrare(0):~}|veryrare}}\n\n{=(rarityEmoji):{{randomRarity}(-1):~}}\n\n{=(rarityChance):{{randomRarity}(0):~}}\n\n{=(randomFish):{{r}(_, ):{#:{{j}(~):{{randomRarity}(1):~}}}}}\n\n{=(Bream):<:Bream:737975203023290418>~956028016268546088}\n{=(Gudgeon):<:Gudgeon:728531524470833173>~956028125546958949}\n{=(Carp):<:Carp:728529853363650610>~956028164361048124}\n{=(Loach):<:Loach:737983153699946538>~956028197110181968}\n{=(Bass):<:Bass:728529467856912414>~956028223542661130}\n{=(Piranha):<:Piranha:738001191841169460>~956028247823515709}\n{=(Koi):<:Koi:738013119628181596>~956028293960859658}\n{=(Rainbow Fish):<:Rainbow:738013772500959242>~956028317461544970}\n\n\n{=(hasBream):{in({Bream(2):~}):{urid}}}\n{=(hasGudgeon):{in({Gudgeon(2):~}):{urid}}}\n{=(hasCarp):{in({Carp(2):~}):{urid}}}\n{=(hasLoach):{in({Loach(2):~}):{urid}}}\n{=(hasBass):{in({Bass(2):~}):{urid}}}\n{=(hasPiranha):{in({Piranha(2):~}):{urid}}}\n{=(hasKoi):{in({Koi(2):~}):{urid}}}\n{=(hasRainbow Fish):{in({Rainbow Fish(2):~}):{urid}}}\n\n{=(COMMENT):Formats the fish collection when willing to check for it}\n{=(fishCollection):{if({hasRainbow Fish}==true):{Rainbow Fish(1):~}~Rainbow_Fish~{veryrare(2):~}} {if({hasKoi}==true):{Koi(1):~}~Koi~{veryrare(2):~}} {if({hasPiranha}==true):{Piranha(1):~}~Piranha~{rare(2):~}} {if({hasBass}==true):{Bass(1):~}~Bass~{rare(2):~}} {if({hasLoach}==true):{Loach(1):~}~Loach~{uncommon(2):~}} {if({hasCarp}==true):{Carp(1):~}~Carp~{uncommon(2):~}} {if({hasGudgeon}==true):{Gudgeon(1):~}~Gudgeon~{common(2):~}} {if({hasBream}==true):{Bream(1):~}~Bream~{common(2):~}}}\n\n{=(fishCollection):{{r}(_, ):{{r}(~, ):{{r}( ,{nl}):{{j}( ):{fishCollection}}}}}}\n\n{=(fishChecks):{hasBream} {hasGudgeon} {hasCarp} {hasLoach} {hasBass} {hasPiranha} {hasKoi} {hasRainbow Fish}}\n\n{=(fishCaughtCount):{{i}({pl}):{{r}(false,):{fishChecks} {pl}}}}\n\n{=(COMMENT):Returns true if the user has fished at least once.}\n{=(hasFished):{in(true):{fishChecks}}}\n\n{=(fishEmoji):{{randomFish}(1):~}}\n{=(fishRole):{{randomFish}(0):~}}\n\n{=(hasCurrentlyCaughtFishRole):{in({fishRole}):{urid}}}\n\n{=(maxFish):8}\n\n{=(COMMENT):Checks if the current fishing command completes the fish collection!}\n{=(isCompletingCollection):{in(true true):{{ct}({maxFish}):{m:trunc({fishCaughtCount}+1)}} {{ct}(false):{hasCurrentlyCaughtFishRole}}}}\n\n{=(fishFormatted):{fishEmoji} {randomFish}}\n\n{=(role.New):956051068473716776}\n{=(isNew):{in({role.New}):{urid}}}\n\n{=(e.quest):<:quest:956038003317415986>}\n{=(e.questComplete):<a:questcomplete:956070969422774363>}\n{=(e.bait):<:bait:735914686071046326>}\n{=(e.rod):<:rod:728573914376306751>}\n\n{=(COMMENT):Embed and Output Management}\n{=(title.fisherman):Laroc Feer}\n{=(title.casting):Casting line...}\n{=(title.cooldown):}\n{=(title.collection):Fish Collection [{fishCaughtCount}/{maxFish}]}\n{=(em.title):{title.{if({isCheckingCollection}==true):collection|{if({isOnCooldown}==true):cooldown|{if({isNew}==true):casting|{if({hasFished}==false):fisherman|casting}}}}}}\n\n{=(fishingEmoji):🎣}\n{=(msg.caught):{fishingEmoji} **You caught 1 {fishFormatted} {rarityEmoji} {um}!**{if({isNew}==true):{nl}{nl}> 💡 Use `!fish collection` to see your currently-collected fishes!}{if({hasCurrentlyCaughtFishRole}==true):{nl}{nl}🙌 You've already collected that fish and prefer to release it into the water.}{if({isCompletingCollection}==true):{nl}{nl}> {e.questComplete} Congratulations {um}! You have just caught the ultimate fish in your collection!}}\n{=(msg.neverFished):Ahoy Matey!\nIt seems like you've never fished around here before.\nHah, that feel when you catch your first big fish... It reminds me of the good ol' days...\nThere are so many to collect...!\n\nOh, you're interested, {um}? Give me a second and I will give you one of the Fishing Rods I have to get started...\n... There! {e.rod}\n\nI will be watching you over time and give you an exclusive reward if you collect all the fish that swim around here!\n{e.quest} Are you up to the challenge?\n\n> 💡 Use `!fish` again to start collecting your first fish!}\n\n{=(futureUnix):{m:trunc({unix}+{cooldownDuration})}}\n{=(msg.cooldown):{e.bait} {um}, you need to wait a little bit before another fish can bite onto your hook.\nReplenish your bait stock and fish again <t:{futureUnix}:R>.}\n{=(msg.collection):{um}{nl}{fishCollection}{if({isCompletingCollection}==true):{nl}{nl}> {e.questComplete} {um}, you have collected all the fish and are considered a true <@&{roleReward}>!}}\n{=(msg.noFishCollected):{um}, you have not collected any fish yet!}\n\n\n{=(em.desc):{msg.{and({isCheckingCollection}==true|{fishCaughtCount}==0):noFishCollected|{if({isCheckingCollection}==true):collection|{if({isOnCooldown}==true):cooldown|{if({isNew}==true):caught|{if({hasFished}==false):neverFished|caught}}}}}}}\n\n{=(img.fisherman):https://cdn.discordapp.com/attachments/337040974415003649/956045362458681344/unknown.png}\n{=(img.pond):https://cdn.discordapp.com/attachments/337040974415003649/956048733013934150/pond1.png}\n{=(img.bucket):https://cdn.discordapp.com/attachments/337040974415003649/956059985098457148/bucket.png}\n{=():}\n{=(em.thumbnail):{{if({isCheckingCollection}==true):img.bucket|{if({isOnCooldown}==true):img.pond|{if({isCompletingCollection}==true):img.fisherman|{if({isNew}==true):|{if({hasFished}==false):img.fisherman}}}}}}}\n\n\n\n{=(COMMENT):Embed Color Management}\n{=(clr.quest):F9C806}\n{=(clr.caught):0062FF}\n{=(clr.cooldown):EFB4BB}\n{=(clr.collection):65B9E9}\n{=(em.color):{clr.{if({isCheckingCollection}==true):collection|{if({isOnCooldown}==true):cooldown|{if({isNew}==true):caught|{if({isCompletingCollection}==true):quest|{if({hasFished}==false):quest|caught}}}}}}}\n{=(em.color):#{{r}(#,):{em.color}}}\n{embed(color):{em.color}}\n\n\n{=(COMMENT):Command Execution Management}\n{=(cmd.applyCooldown):c:temprole {user(id)} {cooldownRole} {cooldownDuration}s}\n{=(cmd.giveFishRole):c:role custom {user(id)} +{fishRole} -{role.New} {if({isCompletingCollection}==true):+{roleReward}}}\n{=(cmd.giveNewRole):c:role add {user(id)} {role.New}}\n{silence}\n\n{=(COMMENT):Gives the \"New\" role to a player that never fished but just got the fisherman's dialog for the first time}\n{{{and({isNew}==false|{hasFished}==false):cmd.giveNewRole}}}\n\n{=(COMMENT):Applies the cooldown if the user is a new player (has passed the NPC dialog for the first time), or if they already caught at least 1 fish}\n{{{if({isCheckingCollection}==true):|{and({isNew}==true|{isOnCooldown}==false):cmd.applyCooldown|{and({hasFished}==true|{isOnCooldown}==false):cmd.applyCooldown}}}}}\n\n{=(COMMENT):Gives the currently-caught fish role if the player is new or if they have already fished and didn't already have the currently-caught fish role}\n{{{and({hasFished}==false|{isNew}==false):|{and({isCheckingCollection}==false|{hasCurrentlyCaughtFishRole}==false|{isOnCooldown}==false):cmd.giveFishRole}}}}\n{override}\n\n{=(debug):__Debug:__\nrandomRarity: `{randomRarity}`\nrandomFish: `{randomFish}`\n\nfishRole: `{fishRole}`\n\nfishFormatted: {fishFormatted}\n\n**Checks**\nisNew: `{isNew}`\nisOnCooldown: `{isOnCooldown}`\nhasCurrentlyCaughtFishRole: `{hasCurrentlyCaughtFishRole}\n}",
  "embed": "{\"color\": 25343, \"title\": \"{em.title}\", \"thumbnail\": {\"url\": \"{em.thumbnail}\"}, \"description\": \"{em.desc}\"}",
  "last_fetched": "2026-10-20T18:40:36.404Z"
}