Описание
# ✨ PokeMarks for Cobblemon ✨
## 🔍 What is this mod?
#### Ever feel that it's not enough to have shinies alone to represent _rarity_, _status_, _how special that one pokemon is_?
Now you can take it to the next level! PokeMarks introduces marks from `Sword and Shield` / `Scarlet and Violet` into your game - adding more flair, character, and a touch of mystery to your Pokémon. Spend even more time hunting for Pokémon and flaunting your collection!
Each mark comes with:
- 📝 **Title:** A personalized title that appears on your Pokémon
- 🎨 **Color:** A specific color for the title
- 🎲 **Chance:** A percentage (0–100%) that indicates whether the mark is used
- ✨ **Particles:** Customizable particle effects that provide a visual spark
Marks are applied according to in-game conditions like weather, time of day, biome, and more. Almost all of the Sword and Shield / Scarlet and Violet marks are included with their proper chances and conditions from original games, with some little tweaking to fit better in minecraft. With only those lacking a direct Minecraft/Cobblemon counterpart omitted (to be added in future updates).
## ✨ Mark Showcase
There are some amazing combinations of Pokémon with different marks! Here's a glimpse of what's possible:
|  |  |
|:---:|:---:|
|  |  |
| *Vaporeon with the Rainy Mark* | *Shiny Vaporeon with the Thorny Mark* |
**What marks will you discover?** With dozens of possible combinations across hundreds of Pokémon, each mark adds a unique personality and visual flair to your collection.
Will you find a Sandshrew with the Sandstorm Mark? Or perhaps a Charizard with the Alpha Mark? The possibilities are endless!
## 🌟 Features
### Completely Personalizable Marks
- Add, remove, or alter marks in a simple JSON setup
- Configure properties such as title, title color, probability, and particle effects to your liking
### Dynamic Condition Checks
- Marks are given based on in-game events and situations (e.g., `isRaining`, `isDayTime`, `isPokemonIVSum(>=145)`)
- Accommodates a broad range of conditions for precise control over when and where marks occur
### Effortless Cobblemon Integration
- Made to fit flawlessly into Cobblemon without impacting gameplay
### Developer-Friendly Setup
- Open and versatile configuration for easy experimentation and customization
## 🚀 Planned Features
### Enhanced UI Integration
- Mark icons in PC and party overlays
- Visual indicators for marked Pokémon in various interfaces
### Expanded Mark Collection
- More marks from the Pokémon games
- Custom marks unique to Minecraft environments
### Configurable Sound System
- Special sound effects when a Pokémon with a mark is sent out
- Ambient sounds that match the mark's theme
### Mod Integrations
- Compatibility with Alpha Pokémon mods (ensuring only Alpha Pokémon can have Alpha marks)
- Weather mod integration for sandstorm, mist, and blizzard conditions
- Support for biome and dimension mods for more environment-based marks
### In-Game Commands
- Easy addition/deletion/management of marks on Pokémon
- Admin commands for server management
- Player commands for checking mark information
### Statistics Tracking
- Track how many of each mark you've collected
- Achievements for collecting specific mark combinations
## 📋 Available Mark Conditions
Marks utilize condition statements to decide whether they should be applied. Here's the complete set of available conditions:
### 🌍 Environment Conditions
- **isThundering:** Checks if the world is thundering
- **isSnowing:** Checks if it is raining and the biome precipitation is snow
- **isRaining:** Simply checks if it's raining in the world
- **isNight:** Checks whether the world is in a state of night
- **isDay:** Checks whether it is daytime in the world
### ⏰ Time Conditions
- **isMoonPhase:** Compares the present moon phase with a specified condition (e.g., `isMoonPhase(2005000)`)
- **isDayTime:** Checks if the daytime in ticks falls in a certain range (e.g., `isDayTime(6000..7000)`). Minecraft's day-night cycle lasts from 0 to 24000 ticks
### 📍 Location Conditions
- **isPosition:** Checks if the spawn position (x, y, z) is as specified (e.g., `isPosition(*, >=20,!=0)`)
- **isBiome:** Checks whether the current biome matches given biome IDs (e.g., `isBiome(minecraft:ocean, minecraft:desert)`)
- **isDesert:** Checks if the current biome is desert, badlands, or eroded badlands
### 🐠 Pokémon Conditions
- **isPokemonIVSum:** Checks whether the total IV values satisfy a condition (e.g., `isPokemonIVSum(>=145)`)
- **isFished:** Checks if the Pokémon was spawned through fishing
## 🧩 Condition Expression Syntax
Conditions can be simple or complex with these powerful options:
### Numerical Operators
- Support for `>`, `=`, `