Skip to content
This repository was archived by the owner on Jun 15, 2023. It is now read-only.

Latest commit

History

192 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

NO LONGER MAINTAINED. ANY VERSION AFTER 1.19.4 WILL NOT BE SUPPORTED! USE PAPER'S PARTICLEBUILDER


ParticleLib

A spigot library supporting all particles from 1.8 to 1.19.3

codacymavenissuesstarslicensebuild

SupportFeaturesDownloadUsage

Support

Join the Discord if you have any questions. Don't open an issue to ask for support.

Features

  • Multiversion support from 1.8 - 1.19.3 (All in one Jar)
  • Colored particles
  • Particles with custom velocities
  • Particles with textures
  • Support for every particle in minecraft
  • An easy and fluent API to easily spawn particles with custom data

Download

The latest version can be downloaded on the releases page.

Maven

<dependencies>
<dependency>
<groupId>xyz.xenondevs</groupId>
<artifactId>particle</artifactId>
<version>1.8.4</version>
</dependency>
</dependencies>

Gradle

dependencies {
implementation 'xyz.xenondevs:particle:1.8.4'
}

Note: ParticleLib is on the central repository, so no extra repositories are required.

Usage

For more advanced usage explanations check out the Wiki.

Simple

To spawn particles, you can either use the ParticleEffet#display method, or you can use the ParticleBuilder.
For normal particles without any extra data, the display method is the best choice.

Example:

ParticleEffect.FLAME.display(location);

This code will spawn a flame particle at the specified location.

Some particles can have extra data. This data can contain a range of different properties.
For these special cases, I will only use the ParticleBuilder. Display methods with the specific parameters still exist, but shouldn't be used to avoid confusion.


Directional

Some particles accept a custom velocity. When given a Vector they will travel to the specified offset. The velocity is stored in the offsetX, offsetY and offsetZ properties of the particle.

To see if a particle is Directional check if it has the DIRECTIONAL PropertyType.

Note: The particles Enchantment_Table and Nautilus will be displayed at the offset location and fly to the original location.

Example:

newParticleBuilder(ParticleEffect.FLAME, player.getLocation())
.setOffsetY(1f)
.setSpeed(0.1f)
.display();

This code will spawn a flame particle that flies to the player's head.

Minecraft's particles can behave quite weirdly, so you may have to tweak the speed parameter when using directional particles.


Colored

A few particles like Redstone can have custom colors applied to them. This color can be set with ParticleColor implementations:

  • RegularColor
  • NoteColor

If your plugin runs on a pre 1.13 server, you can also set the RGB values in the offset properties.

To see if a particle is colorable check if it has the COLORABLE PropertyType.

Note:

  • Since 1.13 Redstone particles are storing their color values in another property. Therefore, the offset properties can be properly used on servers above 1.13.
  • Note particles don't accept a custom color. Instead, they support a note value from 0 to 24. Use NoteColor for this particle.

Regular Example:

newParticleBuilder(ParticleEffect.REDSTONE, location)
.setParticleData(newRegularColor(255,255,0))
.display()

This code will spawn a yellow Redstone particle at the specified location.

setParticleData(new RegularColor(255, 255, 0)) can also be replaced with setColor(Color.YELLOW) in case you want to use java.awt.Color instead.

Note Example:

newParticleBuilder(ParticleEffect.NOTE, location)
.setParticleData(newNoteColor(1))
.display()

This code will spawn a green Note particle at the specified location.


Textured

Several particles even accept textures as custom properties! These textures are modified with implementations of the ParticleTexture class:

  • BlockTexture
  • ItemTexture

Warning: These particles NEED the texture property, or the particle won't be displayed.

To see if a particle supports custom textures check if it has the REQUIRES_BLOCK or the REQUIRES_ITEM PropertyType.

Block texture example:

newParticleBuilder(ParticleEffect.FALLING_DUST, location)
.setParticleData(newBlockTexture(Material.STONE))
.display()

This code will spawn a Falling Dust particle with a stone texture.

Item texture example:

ItemStackitem = newItemStack(Material.DIAMOND_AXE);
newParticleBuilder(ParticleEffect.ITEM_CRACK, location)
.setParticleData(newItemTexture(item))
.display();

This code will spawn an Item Crack particle with a diamond axe texture.

Releases

Sponsor this project

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Add copy buttons to all
 blocks
(function() {
function addCopyButtons() {
document.querySelectorAll('pre code').forEach(function(codeBlock) {
if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;
codeBlock.parentElement.setAttribute('data-copy-added', 'true');
var btn = document.createElement('button');
btn.textContent = 'Copy';
btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';
btn.onmouseover = function() { this.style.opacity = '1'; };
btn.onmouseout = function() { this.style.opacity = '0.7'; };
btn.onclick = function() {
navigator.clipboard.writeText(codeBlock.textContent).then(function() {
btn.textContent = 'Copied!';
setTimeout(function() { btn.textContent = 'Copy'; }, 1500);
});
};
codeBlock.parentElement.style.position = 'relative';
codeBlock.parentElement.appendChild(btn);
});
}
addCopyButtons();
// Re-run on dynamic content
var observer = new MutationObserver(addCopyButtons);
observer.observe(document.body, { childList: true, subtree: true });
})();
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
GitHub - ByteZ1337/ParticleLib: Multiversion spigot library supporting all particles and their data (1.8-1.19.3) · GitHub
Skip to content
This repository was archived by the owner on Jun 15, 2023. It is now read-only.

Latest commit

History

192 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

NO LONGER MAINTAINED. ANY VERSION AFTER 1.19.4 WILL NOT BE SUPPORTED! USE PAPER'S PARTICLEBUILDER


ParticleLib

A spigot library supporting all particles from 1.8 to 1.19.3

codacymavenissuesstarslicensebuild

SupportFeaturesDownloadUsage

Support

Join the Discord if you have any questions. Don't open an issue to ask for support.

Features

  • Multiversion support from 1.8 - 1.19.3 (All in one Jar)
  • Colored particles
  • Particles with custom velocities
  • Particles with textures
  • Support for every particle in minecraft
  • An easy and fluent API to easily spawn particles with custom data

Download

The latest version can be downloaded on the releases page.

Maven

<dependencies>
<dependency>
<groupId>xyz.xenondevs</groupId>
<artifactId>particle</artifactId>
<version>1.8.4</version>
</dependency>
</dependencies>

Gradle

dependencies {
implementation 'xyz.xenondevs:particle:1.8.4'
}

Note: ParticleLib is on the central repository, so no extra repositories are required.

Usage

For more advanced usage explanations check out the Wiki.

Simple

To spawn particles, you can either use the ParticleEffet#display method, or you can use the ParticleBuilder.
For normal particles without any extra data, the display method is the best choice.

Example:

ParticleEffect.FLAME.display(location);

This code will spawn a flame particle at the specified location.

Some particles can have extra data. This data can contain a range of different properties.
For these special cases, I will only use the ParticleBuilder. Display methods with the specific parameters still exist, but shouldn't be used to avoid confusion.


Directional

Some particles accept a custom velocity. When given a Vector they will travel to the specified offset. The velocity is stored in the offsetX, offsetY and offsetZ properties of the particle.

To see if a particle is Directional check if it has the DIRECTIONAL PropertyType.

Note: The particles Enchantment_Table and Nautilus will be displayed at the offset location and fly to the original location.

Example:

newParticleBuilder(ParticleEffect.FLAME, player.getLocation())
.setOffsetY(1f)
.setSpeed(0.1f)
.display();

This code will spawn a flame particle that flies to the player's head.

Minecraft's particles can behave quite weirdly, so you may have to tweak the speed parameter when using directional particles.


Colored

A few particles like Redstone can have custom colors applied to them. This color can be set with ParticleColor implementations:

  • RegularColor
  • NoteColor

If your plugin runs on a pre 1.13 server, you can also set the RGB values in the offset properties.

To see if a particle is colorable check if it has the COLORABLE PropertyType.

Note:

  • Since 1.13 Redstone particles are storing their color values in another property. Therefore, the offset properties can be properly used on servers above 1.13.
  • Note particles don't accept a custom color. Instead, they support a note value from 0 to 24. Use NoteColor for this particle.

Regular Example:

newParticleBuilder(ParticleEffect.REDSTONE, location)
.setParticleData(newRegularColor(255,255,0))
.display()

This code will spawn a yellow Redstone particle at the specified location.

setParticleData(new RegularColor(255, 255, 0)) can also be replaced with setColor(Color.YELLOW) in case you want to use java.awt.Color instead.

Note Example:

newParticleBuilder(ParticleEffect.NOTE, location)
.setParticleData(newNoteColor(1))
.display()

This code will spawn a green Note particle at the specified location.


Textured

Several particles even accept textures as custom properties! These textures are modified with implementations of the ParticleTexture class:

  • BlockTexture
  • ItemTexture

Warning: These particles NEED the texture property, or the particle won't be displayed.

To see if a particle supports custom textures check if it has the REQUIRES_BLOCK or the REQUIRES_ITEM PropertyType.

Block texture example:

newParticleBuilder(ParticleEffect.FALLING_DUST, location)
.setParticleData(newBlockTexture(Material.STONE))
.display()

This code will spawn a Falling Dust particle with a stone texture.

Item texture example:

ItemStackitem = newItemStack(Material.DIAMOND_AXE);
newParticleBuilder(ParticleEffect.ITEM_CRACK, location)
.setParticleData(newItemTexture(item))
.display();

This code will spawn an Item Crack particle with a diamond axe texture.

Releases

Sponsor this project

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Force GitHub README to respect dark mode (function() { var style = document.createElement('style'); style.textContent = ' .markdown-body { color-scheme: dark light; } .markdown-body pre { background: #161b22 !important; } .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; } .markdown-body table th, .markdown-body table td { border-color: #30363d !important; } .markdown-body img { background: #0d1117; } .markdown-body blockquote { border-left-color: #8b949e; } .markdown-body hr { border-color: #30363d; } '; document.head.appendChild(style); })(); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' GitHub - ByteZ1337/ParticleLib: Multiversion spigot library supporting all particles and their data (1.8-1.19.3) · GitHub
Skip to content
This repository was archived by the owner on Jun 15, 2023. It is now read-only.

Latest commit

History

192 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

NO LONGER MAINTAINED. ANY VERSION AFTER 1.19.4 WILL NOT BE SUPPORTED! USE PAPER'S PARTICLEBUILDER


ParticleLib

A spigot library supporting all particles from 1.8 to 1.19.3

codacymavenissuesstarslicensebuild

SupportFeaturesDownloadUsage

Support

Join the Discord if you have any questions. Don't open an issue to ask for support.

Features

  • Multiversion support from 1.8 - 1.19.3 (All in one Jar)
  • Colored particles
  • Particles with custom velocities
  • Particles with textures
  • Support for every particle in minecraft
  • An easy and fluent API to easily spawn particles with custom data

Download

The latest version can be downloaded on the releases page.

Maven

<dependencies>
<dependency>
<groupId>xyz.xenondevs</groupId>
<artifactId>particle</artifactId>
<version>1.8.4</version>
</dependency>
</dependencies>

Gradle

dependencies {
implementation 'xyz.xenondevs:particle:1.8.4'
}

Note: ParticleLib is on the central repository, so no extra repositories are required.

Usage

For more advanced usage explanations check out the Wiki.

Simple

To spawn particles, you can either use the ParticleEffet#display method, or you can use the ParticleBuilder.
For normal particles without any extra data, the display method is the best choice.

Example:

ParticleEffect.FLAME.display(location);

This code will spawn a flame particle at the specified location.

Some particles can have extra data. This data can contain a range of different properties.
For these special cases, I will only use the ParticleBuilder. Display methods with the specific parameters still exist, but shouldn't be used to avoid confusion.


Directional

Some particles accept a custom velocity. When given a Vector they will travel to the specified offset. The velocity is stored in the offsetX, offsetY and offsetZ properties of the particle.

To see if a particle is Directional check if it has the DIRECTIONAL PropertyType.

Note: The particles Enchantment_Table and Nautilus will be displayed at the offset location and fly to the original location.

Example:

newParticleBuilder(ParticleEffect.FLAME, player.getLocation())
.setOffsetY(1f)
.setSpeed(0.1f)
.display();

This code will spawn a flame particle that flies to the player's head.

Minecraft's particles can behave quite weirdly, so you may have to tweak the speed parameter when using directional particles.


Colored

A few particles like Redstone can have custom colors applied to them. This color can be set with ParticleColor implementations:

  • RegularColor
  • NoteColor

If your plugin runs on a pre 1.13 server, you can also set the RGB values in the offset properties.

To see if a particle is colorable check if it has the COLORABLE PropertyType.

Note:

  • Since 1.13 Redstone particles are storing their color values in another property. Therefore, the offset properties can be properly used on servers above 1.13.
  • Note particles don't accept a custom color. Instead, they support a note value from 0 to 24. Use NoteColor for this particle.

Regular Example:

newParticleBuilder(ParticleEffect.REDSTONE, location)
.setParticleData(newRegularColor(255,255,0))
.display()

This code will spawn a yellow Redstone particle at the specified location.

setParticleData(new RegularColor(255, 255, 0)) can also be replaced with setColor(Color.YELLOW) in case you want to use java.awt.Color instead.

Note Example:

newParticleBuilder(ParticleEffect.NOTE, location)
.setParticleData(newNoteColor(1))
.display()

This code will spawn a green Note particle at the specified location.


Textured

Several particles even accept textures as custom properties! These textures are modified with implementations of the ParticleTexture class:

  • BlockTexture
  • ItemTexture

Warning: These particles NEED the texture property, or the particle won't be displayed.

To see if a particle supports custom textures check if it has the REQUIRES_BLOCK or the REQUIRES_ITEM PropertyType.

Block texture example:

newParticleBuilder(ParticleEffect.FALLING_DUST, location)
.setParticleData(newBlockTexture(Material.STONE))
.display()

This code will spawn a Falling Dust particle with a stone texture.

Item texture example:

ItemStackitem = newItemStack(Material.DIAMOND_AXE);
newParticleBuilder(ParticleEffect.ITEM_CRACK, location)
.setParticleData(newItemTexture(item))
.display();

This code will spawn an Item Crack particle with a diamond axe texture.

Releases

Sponsor this project

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Highlight search terms from Google/DuckDuckGo/Bing referrer (function() { var ref = document.referrer; var terms = []; if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) { var url = new URL(ref); var q = url.searchParams.get('q') || url.searchParams.get('p'); if (q) { terms = q.split(/\s+/).filter(function(t) { return t.length > 2; }); } } if (terms.length === 0) return; var style = document.createElement('style'); style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }'; document.head.appendChild(style); function highlight(node) { if (node.nodeType === 3) { // text node var text = node.textContent; var found = false; terms.forEach(function(term) { var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\]\\]/g, '\\') + ')', 'gi'); if (regex.test(text)) { found = true; var frag = document.createDocumentFragment(); var parts = text.split(regex); parts.forEach(function(part, i) { if (i % 2 === 0) { frag.appendChild(document.createTextNode(part)); } else { var span = document.createElement('span'); span.className = 'userscript-highlight'; span.textContent = part; frag.appendChild(span); } }); node.parentNode.replaceChild(frag, node); } }); } else if (node.nodeType === 1 && node.childNodes) { // element var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT']; if (!skipTags.includes(node.tagName)) { Array.from(node.childNodes).forEach(highlight); } } } highlight(document.body); // Re-highlight on dynamic content var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1 || node.nodeType === 3) highlight(node); }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' GitHub - ByteZ1337/ParticleLib: Multiversion spigot library supporting all particles and their data (1.8-1.19.3) · GitHub
Skip to content
This repository was archived by the owner on Jun 15, 2023. It is now read-only.

Latest commit

History

192 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

NO LONGER MAINTAINED. ANY VERSION AFTER 1.19.4 WILL NOT BE SUPPORTED! USE PAPER'S PARTICLEBUILDER


ParticleLib

A spigot library supporting all particles from 1.8 to 1.19.3

codacymavenissuesstarslicensebuild

SupportFeaturesDownloadUsage

Support

Join the Discord if you have any questions. Don't open an issue to ask for support.

Features

  • Multiversion support from 1.8 - 1.19.3 (All in one Jar)
  • Colored particles
  • Particles with custom velocities
  • Particles with textures
  • Support for every particle in minecraft
  • An easy and fluent API to easily spawn particles with custom data

Download

The latest version can be downloaded on the releases page.

Maven

<dependencies>
<dependency>
<groupId>xyz.xenondevs</groupId>
<artifactId>particle</artifactId>
<version>1.8.4</version>
</dependency>
</dependencies>

Gradle

dependencies {
implementation 'xyz.xenondevs:particle:1.8.4'
}

Note: ParticleLib is on the central repository, so no extra repositories are required.

Usage

For more advanced usage explanations check out the Wiki.

Simple

To spawn particles, you can either use the ParticleEffet#display method, or you can use the ParticleBuilder.
For normal particles without any extra data, the display method is the best choice.

Example:

ParticleEffect.FLAME.display(location);

This code will spawn a flame particle at the specified location.

Some particles can have extra data. This data can contain a range of different properties.
For these special cases, I will only use the ParticleBuilder. Display methods with the specific parameters still exist, but shouldn't be used to avoid confusion.


Directional

Some particles accept a custom velocity. When given a Vector they will travel to the specified offset. The velocity is stored in the offsetX, offsetY and offsetZ properties of the particle.

To see if a particle is Directional check if it has the DIRECTIONAL PropertyType.

Note: The particles Enchantment_Table and Nautilus will be displayed at the offset location and fly to the original location.

Example:

newParticleBuilder(ParticleEffect.FLAME, player.getLocation())
.setOffsetY(1f)
.setSpeed(0.1f)
.display();

This code will spawn a flame particle that flies to the player's head.

Minecraft's particles can behave quite weirdly, so you may have to tweak the speed parameter when using directional particles.


Colored

A few particles like Redstone can have custom colors applied to them. This color can be set with ParticleColor implementations:

  • RegularColor
  • NoteColor

If your plugin runs on a pre 1.13 server, you can also set the RGB values in the offset properties.

To see if a particle is colorable check if it has the COLORABLE PropertyType.

Note:

  • Since 1.13 Redstone particles are storing their color values in another property. Therefore, the offset properties can be properly used on servers above 1.13.
  • Note particles don't accept a custom color. Instead, they support a note value from 0 to 24. Use NoteColor for this particle.

Regular Example:

newParticleBuilder(ParticleEffect.REDSTONE, location)
.setParticleData(newRegularColor(255,255,0))
.display()

This code will spawn a yellow Redstone particle at the specified location.

setParticleData(new RegularColor(255, 255, 0)) can also be replaced with setColor(Color.YELLOW) in case you want to use java.awt.Color instead.

Note Example:

newParticleBuilder(ParticleEffect.NOTE, location)
.setParticleData(newNoteColor(1))
.display()

This code will spawn a green Note particle at the specified location.


Textured

Several particles even accept textures as custom properties! These textures are modified with implementations of the ParticleTexture class:

  • BlockTexture
  • ItemTexture

Warning: These particles NEED the texture property, or the particle won't be displayed.

To see if a particle supports custom textures check if it has the REQUIRES_BLOCK or the REQUIRES_ITEM PropertyType.

Block texture example:

newParticleBuilder(ParticleEffect.FALLING_DUST, location)
.setParticleData(newBlockTexture(Material.STONE))
.display()

This code will spawn a Falling Dust particle with a stone texture.

Item texture example:

ItemStackitem = newItemStack(Material.DIAMOND_AXE);
newParticleBuilder(ParticleEffect.ITEM_CRACK, location)
.setParticleData(newItemTexture(item))
.display();

This code will spawn an Item Crack particle with a diamond axe texture.

Releases

Sponsor this project

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Strip utm_, fbclid, gclid, etc. from all links on page (function() { var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content', 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid', 'ref', 'ref_src', 'source', 'medium', 'campaign']; function cleanUrl(url) { try { var u = new URL(url, window.location.origin); var changed = false; trackingParams.forEach(function(p) { if (u.searchParams.has(p)) { u.searchParams.delete(p); changed = true; } }); return changed ? u.toString() : url; } catch (e) { return url; } } function cleanLinks() { document.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } cleanLinks(); var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1) { if (node.tagName === 'A') cleanLinks(); node.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + ' GitHub - ByteZ1337/ParticleLib: Multiversion spigot library supporting all particles and their data (1.8-1.19.3) · GitHub
Skip to content
This repository was archived by the owner on Jun 15, 2023. It is now read-only.

Latest commit

History

192 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

NO LONGER MAINTAINED. ANY VERSION AFTER 1.19.4 WILL NOT BE SUPPORTED! USE PAPER'S PARTICLEBUILDER


ParticleLib

A spigot library supporting all particles from 1.8 to 1.19.3

codacymavenissuesstarslicensebuild

SupportFeaturesDownloadUsage

Support

Join the Discord if you have any questions. Don't open an issue to ask for support.

Features

  • Multiversion support from 1.8 - 1.19.3 (All in one Jar)
  • Colored particles
  • Particles with custom velocities
  • Particles with textures
  • Support for every particle in minecraft
  • An easy and fluent API to easily spawn particles with custom data

Download

The latest version can be downloaded on the releases page.

Maven

<dependencies>
<dependency>
<groupId>xyz.xenondevs</groupId>
<artifactId>particle</artifactId>
<version>1.8.4</version>
</dependency>
</dependencies>

Gradle

dependencies {
implementation 'xyz.xenondevs:particle:1.8.4'
}

Note: ParticleLib is on the central repository, so no extra repositories are required.

Usage

For more advanced usage explanations check out the Wiki.

Simple

To spawn particles, you can either use the ParticleEffet#display method, or you can use the ParticleBuilder.
For normal particles without any extra data, the display method is the best choice.

Example:

ParticleEffect.FLAME.display(location);

This code will spawn a flame particle at the specified location.

Some particles can have extra data. This data can contain a range of different properties.
For these special cases, I will only use the ParticleBuilder. Display methods with the specific parameters still exist, but shouldn't be used to avoid confusion.


Directional

Some particles accept a custom velocity. When given a Vector they will travel to the specified offset. The velocity is stored in the offsetX, offsetY and offsetZ properties of the particle.

To see if a particle is Directional check if it has the DIRECTIONAL PropertyType.

Note: The particles Enchantment_Table and Nautilus will be displayed at the offset location and fly to the original location.

Example:

newParticleBuilder(ParticleEffect.FLAME, player.getLocation())
.setOffsetY(1f)
.setSpeed(0.1f)
.display();

This code will spawn a flame particle that flies to the player's head.

Minecraft's particles can behave quite weirdly, so you may have to tweak the speed parameter when using directional particles.


Colored

A few particles like Redstone can have custom colors applied to them. This color can be set with ParticleColor implementations:

  • RegularColor
  • NoteColor

If your plugin runs on a pre 1.13 server, you can also set the RGB values in the offset properties.

To see if a particle is colorable check if it has the COLORABLE PropertyType.

Note:

  • Since 1.13 Redstone particles are storing their color values in another property. Therefore, the offset properties can be properly used on servers above 1.13.
  • Note particles don't accept a custom color. Instead, they support a note value from 0 to 24. Use NoteColor for this particle.

Regular Example:

newParticleBuilder(ParticleEffect.REDSTONE, location)
.setParticleData(newRegularColor(255,255,0))
.display()

This code will spawn a yellow Redstone particle at the specified location.

setParticleData(new RegularColor(255, 255, 0)) can also be replaced with setColor(Color.YELLOW) in case you want to use java.awt.Color instead.

Note Example:

newParticleBuilder(ParticleEffect.NOTE, location)
.setParticleData(newNoteColor(1))
.display()

This code will spawn a green Note particle at the specified location.


Textured

Several particles even accept textures as custom properties! These textures are modified with implementations of the ParticleTexture class:

  • BlockTexture
  • ItemTexture

Warning: These particles NEED the texture property, or the particle won't be displayed.

To see if a particle supports custom textures check if it has the REQUIRES_BLOCK or the REQUIRES_ITEM PropertyType.

Block texture example:

newParticleBuilder(ParticleEffect.FALLING_DUST, location)
.setParticleData(newBlockTexture(Material.STONE))
.display()

This code will spawn a Falling Dust particle with a stone texture.

Item texture example:

ItemStackitem = newItemStack(Material.DIAMOND_AXE);
newParticleBuilder(ParticleEffect.ITEM_CRACK, location)
.setParticleData(newItemTexture(item))
.display();

This code will spawn an Item Crack particle with a diamond axe texture.

Releases

Sponsor this project

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Auto-enable theater mode on YouTube (function() { function tryTheater() { var btn = document.querySelector('button[aria-label="Theater mode"], ytd-player #player button[title="Theater mode"]'); if (btn && !btn.classList.contains('activated')) { btn.click(); } } // Try immediately tryTheater(); // Try after navigation (SPA) var lastUrl = location.href; setInterval(function() { if (location.href !== lastUrl) { lastUrl = location.href; setTimeout(tryTheater, 500); } }, 1000); // Also try on player load var observer = new MutationObserver(tryTheater); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' GitHub - ByteZ1337/ParticleLib: Multiversion spigot library supporting all particles and their data (1.8-1.19.3) · GitHub
Skip to content
This repository was archived by the owner on Jun 15, 2023. It is now read-only.

Latest commit

History

192 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

NO LONGER MAINTAINED. ANY VERSION AFTER 1.19.4 WILL NOT BE SUPPORTED! USE PAPER'S PARTICLEBUILDER


ParticleLib

A spigot library supporting all particles from 1.8 to 1.19.3

codacymavenissuesstarslicensebuild

SupportFeaturesDownloadUsage

Support

Join the Discord if you have any questions. Don't open an issue to ask for support.

Features

  • Multiversion support from 1.8 - 1.19.3 (All in one Jar)
  • Colored particles
  • Particles with custom velocities
  • Particles with textures
  • Support for every particle in minecraft
  • An easy and fluent API to easily spawn particles with custom data

Download

The latest version can be downloaded on the releases page.

Maven

<dependencies>
<dependency>
<groupId>xyz.xenondevs</groupId>
<artifactId>particle</artifactId>
<version>1.8.4</version>
</dependency>
</dependencies>

Gradle

dependencies {
implementation 'xyz.xenondevs:particle:1.8.4'
}

Note: ParticleLib is on the central repository, so no extra repositories are required.

Usage

For more advanced usage explanations check out the Wiki.

Simple

To spawn particles, you can either use the ParticleEffet#display method, or you can use the ParticleBuilder.
For normal particles without any extra data, the display method is the best choice.

Example:

ParticleEffect.FLAME.display(location);

This code will spawn a flame particle at the specified location.

Some particles can have extra data. This data can contain a range of different properties.
For these special cases, I will only use the ParticleBuilder. Display methods with the specific parameters still exist, but shouldn't be used to avoid confusion.


Directional

Some particles accept a custom velocity. When given a Vector they will travel to the specified offset. The velocity is stored in the offsetX, offsetY and offsetZ properties of the particle.

To see if a particle is Directional check if it has the DIRECTIONAL PropertyType.

Note: The particles Enchantment_Table and Nautilus will be displayed at the offset location and fly to the original location.

Example:

newParticleBuilder(ParticleEffect.FLAME, player.getLocation())
.setOffsetY(1f)
.setSpeed(0.1f)
.display();

This code will spawn a flame particle that flies to the player's head.

Minecraft's particles can behave quite weirdly, so you may have to tweak the speed parameter when using directional particles.


Colored

A few particles like Redstone can have custom colors applied to them. This color can be set with ParticleColor implementations:

  • RegularColor
  • NoteColor

If your plugin runs on a pre 1.13 server, you can also set the RGB values in the offset properties.

To see if a particle is colorable check if it has the COLORABLE PropertyType.

Note:

  • Since 1.13 Redstone particles are storing their color values in another property. Therefore, the offset properties can be properly used on servers above 1.13.
  • Note particles don't accept a custom color. Instead, they support a note value from 0 to 24. Use NoteColor for this particle.

Regular Example:

newParticleBuilder(ParticleEffect.REDSTONE, location)
.setParticleData(newRegularColor(255,255,0))
.display()

This code will spawn a yellow Redstone particle at the specified location.

setParticleData(new RegularColor(255, 255, 0)) can also be replaced with setColor(Color.YELLOW) in case you want to use java.awt.Color instead.

Note Example:

newParticleBuilder(ParticleEffect.NOTE, location)
.setParticleData(newNoteColor(1))
.display()

This code will spawn a green Note particle at the specified location.


Textured

Several particles even accept textures as custom properties! These textures are modified with implementations of the ParticleTexture class:

  • BlockTexture
  • ItemTexture

Warning: These particles NEED the texture property, or the particle won't be displayed.

To see if a particle supports custom textures check if it has the REQUIRES_BLOCK or the REQUIRES_ITEM PropertyType.

Block texture example:

newParticleBuilder(ParticleEffect.FALLING_DUST, location)
.setParticleData(newBlockTexture(Material.STONE))
.display()

This code will spawn a Falling Dust particle with a stone texture.

Item texture example:

ItemStackitem = newItemStack(Material.DIAMOND_AXE);
newParticleBuilder(ParticleEffect.ITEM_CRACK, location)
.setParticleData(newItemTexture(item))
.display();

This code will spawn an Item Crack particle with a diamond axe texture.

Releases

Sponsor this project

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Remove or un-stick sticky/fixed headers that block content (function() { function unstick() { document.querySelectorAll('header, nav, [role="banner"], .header, .navbar, .sticky, .fixed-top, [style*="position: fixed"], [style*="position:sticky"]').forEach(function(el) { if (el.style.position === 'fixed' || el.style.position === 'sticky' || getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') { el.style.position = 'static'; el.style.top = 'auto'; el.style.zIndex = 'auto'; } }); } unstick(); var observer = new MutationObserver(unstick); observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] }); })(); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' GitHub - ByteZ1337/ParticleLib: Multiversion spigot library supporting all particles and their data (1.8-1.19.3) · GitHub
Skip to content
This repository was archived by the owner on Jun 15, 2023. It is now read-only.

Latest commit

History

192 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

NO LONGER MAINTAINED. ANY VERSION AFTER 1.19.4 WILL NOT BE SUPPORTED! USE PAPER'S PARTICLEBUILDER


ParticleLib

A spigot library supporting all particles from 1.8 to 1.19.3

codacymavenissuesstarslicensebuild

SupportFeaturesDownloadUsage

Support

Join the Discord if you have any questions. Don't open an issue to ask for support.

Features

  • Multiversion support from 1.8 - 1.19.3 (All in one Jar)
  • Colored particles
  • Particles with custom velocities
  • Particles with textures
  • Support for every particle in minecraft
  • An easy and fluent API to easily spawn particles with custom data

Download

The latest version can be downloaded on the releases page.

Maven

<dependencies>
<dependency>
<groupId>xyz.xenondevs</groupId>
<artifactId>particle</artifactId>
<version>1.8.4</version>
</dependency>
</dependencies>

Gradle

dependencies {
implementation 'xyz.xenondevs:particle:1.8.4'
}

Note: ParticleLib is on the central repository, so no extra repositories are required.

Usage

For more advanced usage explanations check out the Wiki.

Simple

To spawn particles, you can either use the ParticleEffet#display method, or you can use the ParticleBuilder.
For normal particles without any extra data, the display method is the best choice.

Example:

ParticleEffect.FLAME.display(location);

This code will spawn a flame particle at the specified location.

Some particles can have extra data. This data can contain a range of different properties.
For these special cases, I will only use the ParticleBuilder. Display methods with the specific parameters still exist, but shouldn't be used to avoid confusion.


Directional

Some particles accept a custom velocity. When given a Vector they will travel to the specified offset. The velocity is stored in the offsetX, offsetY and offsetZ properties of the particle.

To see if a particle is Directional check if it has the DIRECTIONAL PropertyType.

Note: The particles Enchantment_Table and Nautilus will be displayed at the offset location and fly to the original location.

Example:

newParticleBuilder(ParticleEffect.FLAME, player.getLocation())
.setOffsetY(1f)
.setSpeed(0.1f)
.display();

This code will spawn a flame particle that flies to the player's head.

Minecraft's particles can behave quite weirdly, so you may have to tweak the speed parameter when using directional particles.


Colored

A few particles like Redstone can have custom colors applied to them. This color can be set with ParticleColor implementations:

  • RegularColor
  • NoteColor

If your plugin runs on a pre 1.13 server, you can also set the RGB values in the offset properties.

To see if a particle is colorable check if it has the COLORABLE PropertyType.

Note:

  • Since 1.13 Redstone particles are storing their color values in another property. Therefore, the offset properties can be properly used on servers above 1.13.
  • Note particles don't accept a custom color. Instead, they support a note value from 0 to 24. Use NoteColor for this particle.

Regular Example:

newParticleBuilder(ParticleEffect.REDSTONE, location)
.setParticleData(newRegularColor(255,255,0))
.display()

This code will spawn a yellow Redstone particle at the specified location.

setParticleData(new RegularColor(255, 255, 0)) can also be replaced with setColor(Color.YELLOW) in case you want to use java.awt.Color instead.

Note Example:

newParticleBuilder(ParticleEffect.NOTE, location)
.setParticleData(newNoteColor(1))
.display()

This code will spawn a green Note particle at the specified location.


Textured

Several particles even accept textures as custom properties! These textures are modified with implementations of the ParticleTexture class:

  • BlockTexture
  • ItemTexture

Warning: These particles NEED the texture property, or the particle won't be displayed.

To see if a particle supports custom textures check if it has the REQUIRES_BLOCK or the REQUIRES_ITEM PropertyType.

Block texture example:

newParticleBuilder(ParticleEffect.FALLING_DUST, location)
.setParticleData(newBlockTexture(Material.STONE))
.display()

This code will spawn a Falling Dust particle with a stone texture.

Item texture example:

ItemStackitem = newItemStack(Material.DIAMOND_AXE);
newParticleBuilder(ParticleEffect.ITEM_CRACK, location)
.setParticleData(newItemTexture(item))
.display();

This code will spawn an Item Crack particle with a diamond axe texture.

Releases

Sponsor this project

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Universal Dark Mode - works on any site (function() { var enabled = true; function applyDarkMode() { if (!enabled) return; // Create style element if it doesn't exist var style = document.getElementById('universal-dark-mode-style'); if (!style) { style = document.createElement('style'); style.id = 'universal-dark-mode-style'; document.head.appendChild(style); } // Dark mode CSS - inverts colors but preserves images/video style.textContent = ' /* Invert everything except media */ html { filter: invert(1) hue-rotate(180deg) !important; background: #1a1a2e !important; } /* Restore images, videos, iframes, canvas */ img, video, iframe, canvas, svg, picture, [style*="background-image"] { filter: invert(1) hue-rotate(180deg) !important; } /* Preserve specific elements that should not be inverted */ .no-dark-mode, .no-dark-mode *, [data-theme="light"], [data-theme="light"], .ace_editor, .ace_editor *, .CodeMirror, .CodeMirror *, .monaco-editor, .monaco-editor *, .markdown-body pre, .markdown-body pre *, .highlight, .highlight *, pre code, pre code * { filter: none !important; } /* Fix common UI elements */ .modal, .popup, .dropdown-menu, .tooltip, .popover { filter: invert(1) hue-rotate(180deg) !important; background: #2d2d44 !important; border-color: #444 !important; } /* Scrollbars */ ::-webkit-scrollbar { background: #1a1a2e !important; } ::-webkit-scrollbar-thumb { background: #444 !important; } ::-webkit-scrollbar-thumb:hover { background: #555 !important; } /* Selection */ ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; } ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; } '; } function removeDarkMode() { var style = document.getElementById('universal-dark-mode-style'); if (style) style.remove(); } // Toggle with Alt+Shift+D document.addEventListener('keydown', function(e) { if (e.altKey && e.shiftKey && e.key === 'D') { e.preventDefault(); enabled = !enabled; if (enabled) { applyDarkMode(); console.log('[Universal Dark Mode] Enabled'); } else { removeDarkMode(); console.log('[Universal Dark Mode] Disabled'); } } }); // Apply on load applyDarkMode(); // Re-apply on dynamic content var observer = new MutationObserver(function(mutations) { if (enabled && !document.getElementById('universal-dark-mode-style')) { applyDarkMode(); } }); observer.observe(document.head, { childList: true }); console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle'); })(); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })(); GitHub - ByteZ1337/ParticleLib: Multiversion spigot library supporting all particles and their data (1.8-1.19.3) · GitHub
Skip to content
This repository was archived by the owner on Jun 15, 2023. It is now read-only.

Latest commit

History

192 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

NO LONGER MAINTAINED. ANY VERSION AFTER 1.19.4 WILL NOT BE SUPPORTED! USE PAPER'S PARTICLEBUILDER


ParticleLib

A spigot library supporting all particles from 1.8 to 1.19.3

codacymavenissuesstarslicensebuild

SupportFeaturesDownloadUsage

Support

Join the Discord if you have any questions. Don't open an issue to ask for support.

Features

  • Multiversion support from 1.8 - 1.19.3 (All in one Jar)
  • Colored particles
  • Particles with custom velocities
  • Particles with textures
  • Support for every particle in minecraft
  • An easy and fluent API to easily spawn particles with custom data

Download

The latest version can be downloaded on the releases page.

Maven

<dependencies>
<dependency>
<groupId>xyz.xenondevs</groupId>
<artifactId>particle</artifactId>
<version>1.8.4</version>
</dependency>
</dependencies>

Gradle

dependencies {
implementation 'xyz.xenondevs:particle:1.8.4'
}

Note: ParticleLib is on the central repository, so no extra repositories are required.

Usage

For more advanced usage explanations check out the Wiki.

Simple

To spawn particles, you can either use the ParticleEffet#display method, or you can use the ParticleBuilder.
For normal particles without any extra data, the display method is the best choice.

Example:

ParticleEffect.FLAME.display(location);

This code will spawn a flame particle at the specified location.

Some particles can have extra data. This data can contain a range of different properties.
For these special cases, I will only use the ParticleBuilder. Display methods with the specific parameters still exist, but shouldn't be used to avoid confusion.


Directional

Some particles accept a custom velocity. When given a Vector they will travel to the specified offset. The velocity is stored in the offsetX, offsetY and offsetZ properties of the particle.

To see if a particle is Directional check if it has the DIRECTIONAL PropertyType.

Note: The particles Enchantment_Table and Nautilus will be displayed at the offset location and fly to the original location.

Example:

newParticleBuilder(ParticleEffect.FLAME, player.getLocation())
.setOffsetY(1f)
.setSpeed(0.1f)
.display();

This code will spawn a flame particle that flies to the player's head.

Minecraft's particles can behave quite weirdly, so you may have to tweak the speed parameter when using directional particles.


Colored

A few particles like Redstone can have custom colors applied to them. This color can be set with ParticleColor implementations:

  • RegularColor
  • NoteColor

If your plugin runs on a pre 1.13 server, you can also set the RGB values in the offset properties.

To see if a particle is colorable check if it has the COLORABLE PropertyType.

Note:

  • Since 1.13 Redstone particles are storing their color values in another property. Therefore, the offset properties can be properly used on servers above 1.13.
  • Note particles don't accept a custom color. Instead, they support a note value from 0 to 24. Use NoteColor for this particle.

Regular Example:

newParticleBuilder(ParticleEffect.REDSTONE, location)
.setParticleData(newRegularColor(255,255,0))
.display()

This code will spawn a yellow Redstone particle at the specified location.

setParticleData(new RegularColor(255, 255, 0)) can also be replaced with setColor(Color.YELLOW) in case you want to use java.awt.Color instead.

Note Example:

newParticleBuilder(ParticleEffect.NOTE, location)
.setParticleData(newNoteColor(1))
.display()

This code will spawn a green Note particle at the specified location.


Textured

Several particles even accept textures as custom properties! These textures are modified with implementations of the ParticleTexture class:

  • BlockTexture
  • ItemTexture

Warning: These particles NEED the texture property, or the particle won't be displayed.

To see if a particle supports custom textures check if it has the REQUIRES_BLOCK or the REQUIRES_ITEM PropertyType.

Block texture example:

newParticleBuilder(ParticleEffect.FALLING_DUST, location)
.setParticleData(newBlockTexture(Material.STONE))
.display()

This code will spawn a Falling Dust particle with a stone texture.

Item texture example:

ItemStackitem = newItemStack(Material.DIAMOND_AXE);
newParticleBuilder(ParticleEffect.ITEM_CRACK, location)
.setParticleData(newItemTexture(item))
.display();

This code will spawn an Item Crack particle with a diamond axe texture.

Releases

Sponsor this project

Used by

Contributors

Languages