<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Problème de son]]></title><description><![CDATA[<p dir="auto">Bonjours à tous !</p>
<p dir="auto">Depuis un moment, j’essaye de faire un bloc qui téléporte le joueur à un étage au dessus (en quelque sorte), mais le problème, c’est que ça marche de façon très aléatoire :s<br />
Quelque fois la téléportation se fait, quelque fois non, défois la téléportation se fait mais le son n’est pas jouer, d’autre fois non, c’est très hasardeux <img src="https://www.minecraftforgefrance.fr/assets/plugins/nodebb-plugin-emoji/emoji/android/1f61e.png?v=3a52b347b9a" class="not-responsive emoji emoji-android emoji--disappointed" style="height:23px;width:auto;vertical-align:middle" title=":(" alt="😞" /></p>
<p dir="auto">Voici mon code:</p>
<pre><code class="java">
package com.yvelis.mtpblocks.blocks;

import cpw.mods.fml.common.network.Player;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.util.ChatMessageComponent;
import net.minecraft.world.World;

public class TpUpBlock extends Block
{

public TpUpBlock(int id)
{
super(id, Material.glass);
}

public void onEntityWalking(World world, int X, int Y, int Z, Entity entity)
{

if(!(entity instanceof EntityPlayer))
return;

EntityPlayer player = (EntityPlayer) entity;

double posY = player.posY;
boolean locationFound = false;

for (int i = (int) posY; i &lt; 1000 ; i++)
{

if( world.getBlockId(X, i, Z) != 0 &amp;&amp; world.getBlockId(X, i + 1, Z) == 0 &amp;&amp; world.getBlockId(X, i + 2, Z) == 0 &amp;&amp; world.getBlockId(X, i + 3, Z) == 0)
{
player.setPosition(X, i + 3, Z);
if(!world.isRemote)
player.worldObj.playSoundAtEntity(player, "mtpblocks:teleport", 1.0F, 1.0F);
return;
}
}
if(!world.isRemote)
player.sendChatToPlayer( ChatMessageComponent.createFromText("Aucune destination trouvé pour la téléportation") );

}

}

</code></pre>
<p dir="auto">Merci de votre futur aide <img src="https://www.minecraftforgefrance.fr/assets/plugins/nodebb-plugin-emoji/emoji/android/1f642.png?v=3a52b347b9a" class="not-responsive emoji emoji-android emoji--slightly_smiling_face" style="height:23px;width:auto;vertical-align:middle" title=":)" alt="🙂" /></p>
<p dir="auto">Mugiwaxar</p>
]]></description><link>https://www.minecraftforgefrance.fr/topic/414/problème-de-son</link><generator>RSS for Node</generator><lastBuildDate>Wed, 19 Aug 2026 14:31:27 GMT</lastBuildDate><atom:link href="https://www.minecraftforgefrance.fr/topic/414.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 29 Jan 2014 20:21:45 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Problème de son on Wed, 29 Jan 2014 22:40:19 GMT]]></title><description><![CDATA[<p dir="auto">Bon, mon problème a l’air d’être résolut <img src="https://www.minecraftforgefrance.fr/assets/plugins/nodebb-plugin-emoji/emoji/android/1f642.png?v=3a52b347b9a" class="not-responsive emoji emoji-android emoji--slightly_smiling_face" style="height:23px;width:auto;vertical-align:middle" title=":)" alt="🙂" /></p>
<p dir="auto">Je fait encore quelque teste et je confirme</p>
<p dir="auto">Merci pour ton aide <img src="https://www.minecraftforgefrance.fr/assets/plugins/nodebb-plugin-emoji/emoji/android/1f609.png?v=3a52b347b9a" class="not-responsive emoji emoji-android emoji--wink" style="height:23px;width:auto;vertical-align:middle" title=";)" alt="😉" /></p>
<p dir="auto">Voici mon code source pour ceux que sa interesse:</p>
<pre><code class="java">
package com.yvelis.mtpblocks.blocks;

import cpw.mods.fml.common.network.Player;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.util.AxisAlignedBB;
import net.minecraft.util.ChatMessageComponent;
import net.minecraft.world.World;

public class TpUpBlock extends Block
{

public TpUpBlock(int id)
{
super(id, Material.glass);
}

public AxisAlignedBB getCollisionBoundingBoxFromPool(World world, int i, int j, int k)
{
float f = 0.0625F;
return AxisAlignedBB.getAABBPool().getAABB((float)i + f, j, (float)k + f, (float)(i + 1) - f, (float)(j + 1) - f, (float)(k + 1) - f);
}

@Override
public void onEntityCollidedWithBlock(World world, int X, int Y, int Z, Entity entity)
{

if(!(entity instanceof EntityPlayer))
return;

if(world.isRemote)
return;

EntityPlayer player = (EntityPlayer) entity;

int posY = (int) player.posY + 1;
boolean locationFound = false;

while ( posY &lt; world.getHeight() )
{
posY++;

if( !world.isAirBlock(X, posY, Z) &amp;&amp; world.isAirBlock(X, posY + 1, Z) &amp;&amp; world.isAirBlock(X, posY + 2, Z) &amp;&amp; world.isAirBlock(X, posY + 3, Z))
{
locationFound = true;
break;
}
}

if(locationFound)
{
player.setPositionAndUpdate(X, posY + 1, Z);
player.worldObj.playSoundAtEntity(player, "mtpblocks:teleport", 1.0F, 1.0F);
}
else
player.sendChatToPlayer( ChatMessageComponent.createFromText("Aucune destination pour la teleportation") );

super.onEntityCollidedWithBlock(world, X, Y, Z, entity);
}

}

</code></pre>
<p dir="auto">Edit: Tout a l’air d’être fonctionnel !<br />
Résolut</p>
]]></description><link>https://www.minecraftforgefrance.fr/post/9259</link><guid isPermaLink="true">https://www.minecraftforgefrance.fr/post/9259</guid><dc:creator><![CDATA[Mugiwaxar]]></dc:creator><pubDate>Wed, 29 Jan 2014 22:40:19 GMT</pubDate></item><item><title><![CDATA[Reply to Problème de son on Wed, 29 Jan 2014 21:14:02 GMT]]></title><description><![CDATA[<p dir="auto">@‘robin4002’:</p>
<blockquote>
<p dir="auto">@‘Mugiwaxar’:</p>
<blockquote>
<p dir="auto">Le problème avec ce code, c’est que si au dessus il y a plusieurs bloc de suite, le joueur ne serra pas téléporter</p>
</blockquote>
<p dir="auto">Comment ça ?</p>
</blockquote>
<p dir="auto">Avec ce code, le joueur va se téléporter au premier bloc trouvée, et va essayer de se TP dessu, si ya pas la place, la téléportation va s’annuler, d’ou mon test si il y a des bloc au dessu</p>
<p dir="auto">@‘robin4002’:</p>
<blockquote>
<p dir="auto">@‘Mugiwaxar’:</p>
<blockquote>
<p dir="auto">Pourquoi pas de boucle for ?</p>
<p dir="auto">Ps: J’ai pris ton code, le problème reste le même <img src="https://www.minecraftforgefrance.fr/assets/plugins/nodebb-plugin-emoji/emoji/android/1f61e.png?v=3a52b347b9a" class="not-responsive emoji emoji-android emoji--disappointed" style="height:23px;width:auto;vertical-align:middle" title=":(" alt="😞" /></p>
</blockquote>
<p dir="auto">Car une boucle for n’est pas approprié pour ça, tu fais beaucoup plus de test que nécessaire (surtout que 1000 c’est plus que les 256 maximum).</p>
</blockquote>
<p dir="auto">Au final j’ai mis world.getHeight()</p>
<p dir="auto">@‘robin4002’:</p>
<blockquote>
<p dir="auto">@‘Mugiwaxar’:</p>
<blockquote>
<p dir="auto">Ps2: J’ai l’avertissement: “<span style="color:#FF0000">[Avertissement</span> [Minecraft-Server] Player984 moved wrongly!]” qui s’affiche à chaque fois</p>
</blockquote>
<p dir="auto">Il doit pas aimer le setPosition, regarde la fonction pour téléporter, il me semble qu’il y a d’autre code pour prévenir la téléportation.</p>
</blockquote>
<p dir="auto">Malheuresement j’ai chercher pendant un moment, j’ai rien trouvé <img src="https://www.minecraftforgefrance.fr/assets/plugins/nodebb-plugin-emoji/emoji/android/1f61e.png?v=3a52b347b9a" class="not-responsive emoji emoji-android emoji--disappointed" style="height:23px;width:auto;vertical-align:middle" title=":(" alt="😞" /></p>
]]></description><link>https://www.minecraftforgefrance.fr/post/9258</link><guid isPermaLink="true">https://www.minecraftforgefrance.fr/post/9258</guid><dc:creator><![CDATA[Mugiwaxar]]></dc:creator><pubDate>Wed, 29 Jan 2014 21:14:02 GMT</pubDate></item><item><title><![CDATA[Reply to Problème de son on Wed, 29 Jan 2014 21:08:10 GMT]]></title><description><![CDATA[<p dir="auto">@‘Mugiwaxar’:</p>
<blockquote>
<p dir="auto">Le problème avec ce code, c’est que si au dessus il y a plusieurs bloc de suite, le joueur ne serra pas téléporter</p>
</blockquote>
<p dir="auto">Comment ça ?</p>
<p dir="auto">@‘Mugiwaxar’:</p>
<blockquote>
<p dir="auto">Pourquoi pas de boucle for ?</p>
<p dir="auto">Ps: J’ai pris ton code, le problème reste le même <img src="https://www.minecraftforgefrance.fr/assets/plugins/nodebb-plugin-emoji/emoji/android/1f61e.png?v=3a52b347b9a" class="not-responsive emoji emoji-android emoji--disappointed" style="height:23px;width:auto;vertical-align:middle" title=":(" alt="😞" /></p>
</blockquote>
<p dir="auto">Car une boucle for n’est pas approprié pour ça, tu fais beaucoup plus de test que nécessaire (surtout que 1000 c’est plus que les 256 maximum).</p>
<p dir="auto">Essaye avec le OnEntityColled et réduit la collision du bloc (regarde le code de la sandStone) il me semble que la fonction onEntityWalking ne fonctionne pas super bien.</p>
<p dir="auto">@‘Mugiwaxar’:</p>
<blockquote>
<p dir="auto">Ps2: J’ai l’avertissement: “<span style="color:#FF0000">[Avertissement</span> [Minecraft-Server] Player984 moved wrongly!]” qui s’affiche à chaque fois</p>
</blockquote>
<p dir="auto">Il doit pas aimer le setPosition, regarde la fonction pour téléporter, il me semble qu’il y a d’autre code pour prévenir la téléportation.</p>
]]></description><link>https://www.minecraftforgefrance.fr/post/9256</link><guid isPermaLink="true">https://www.minecraftforgefrance.fr/post/9256</guid><dc:creator><![CDATA[robin4002]]></dc:creator><pubDate>Wed, 29 Jan 2014 21:08:10 GMT</pubDate></item><item><title><![CDATA[Reply to Problème de son on Wed, 29 Jan 2014 20:33:08 GMT]]></title><description><![CDATA[<p dir="auto">Le problème avec ce code, c’est que si au dessus il y a plusieurs bloc de suite, le joueur ne serra pas téléporter</p>
<p dir="auto">Pourquoi pas de boucle for ?</p>
<p dir="auto">Ps: J’ai pris ton code, le problème reste le même <img src="https://www.minecraftforgefrance.fr/assets/plugins/nodebb-plugin-emoji/emoji/android/1f61e.png?v=3a52b347b9a" class="not-responsive emoji emoji-android emoji--disappointed" style="height:23px;width:auto;vertical-align:middle" title=":(" alt="😞" /></p>
<p dir="auto">Ps2: J’ai l’avertissement: “<span style="color:#FF0000">[Avertissement</span> [Minecraft-Server] Player984 moved wrongly!]” qui s’affiche à chaque fois</p>
]]></description><link>https://www.minecraftforgefrance.fr/post/9255</link><guid isPermaLink="true">https://www.minecraftforgefrance.fr/post/9255</guid><dc:creator><![CDATA[Mugiwaxar]]></dc:creator><pubDate>Wed, 29 Jan 2014 20:33:08 GMT</pubDate></item><item><title><![CDATA[Reply to Problème de son on Wed, 29 Jan 2014 20:30:05 GMT]]></title><description><![CDATA[<p dir="auto">Ouch, la boucle for c’est pas une bonne idée du tout. De plus, world.isAirBlock(x, y, z) est à privilégier.</p>
<p dir="auto">J’aurai plutôt fait ça :</p>
<pre><code class="java">package com.yvelis.mtpblocks.blocks;

import cpw.mods.fml.common.network.Player;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.util.ChatMessageComponent;
import net.minecraft.world.World;

public class TpUpBlock extends Block
{

public TpUpBlock(int id)
{
super(id, Material.glass);
}

public void onEntityWalking(World world, int x, int y, int z, Entity entity)
{
if(!(entity instanceof EntityPlayer))
return;

EntityPlayer player = (EntityPlayer) entity;
boolean locationFound = false;

int targetY = y;
while(!world.isAirBlock(x, targetY, z) &amp;&amp; targetY &lt; 254)
{
targetY++;
}

if(targetY &lt; 254)
{
player.setPosition(x, targetY, y);
if(!world.isRemote)
player.worldObj.playSoundAtEntity(player, "mtpblocks:teleport", 1.0F, 1.0F);
}
else
{
player.sendChatToPlayer( ChatMessageComponent.createFromText("Aucune destination trouvé pour la téléportation") );
}
}
}
</code></pre>
]]></description><link>https://www.minecraftforgefrance.fr/post/9254</link><guid isPermaLink="true">https://www.minecraftforgefrance.fr/post/9254</guid><dc:creator><![CDATA[robin4002]]></dc:creator><pubDate>Wed, 29 Jan 2014 20:30:05 GMT</pubDate></item></channel></rss>