Skocz do zawartości
  • 0

getBlock setType


MocSwiatla320

Pytanie

Witam siedzę nad jednym błędem już 2 dzień, mianowicie pisze plugin na 1.15 i chce postawić blok metoda getBlock settype MATERIAL.BEDROCK to wywala jakieś śmieszne błędy w konsoli jeśli ktoś chce zobaczyć to niech napisze na szybko taki plugin. Wcześniej miałem ten kod na 1.8.8 i wszystko działało a co zrobili w tym 1.15 to nie wiem. 

Odnośnik do komentarza
https://skript.pl/temat/37047-getblock-settype/
Udostępnij na innych stronach

12 odpowiedzi na to pytanie

Rekomendowane odpowiedzi

  • 0
12 minut temu, MocSwiatla320 napisał:

Witam siedzę nad jednym błędem już 2 dzień, mianowicie pisze plugin na 1.15 i chce postawić blok metoda getBlock settype MATERIAL.BEDROCK to wywala jakieś śmieszne błędy w konsoli jeśli ktoś chce zobaczyć to niech napisze na szybko taki plugin. Wcześniej miałem ten kod na 1.8.8 i wszystko działało a co zrobili w tym 1.15 to nie wiem. 

Pokaż jakie błędy :P 

Odnośnik do komentarza
https://skript.pl/temat/37047-getblock-settype/#findComment-236013
Udostępnij na innych stronach

  • 0

"Śmieszne błędy"? Po co bierzesz się za robienie pluginu skoro nawet nie wiesz ze stacktrace jest pewnie najważniejszy żeby rozwiązać ten problem. Block jest pewnie nullem lub getBlock zostało zmienione na coś innego lub blok po prostu nie istnieje

 

nikt nie ma czasu robić serwera i pluginu tylko żeby to przetestować skoro możesz dać błąd xD

Odnośnik do komentarza
https://skript.pl/temat/37047-getblock-settype/#findComment-236023
Udostępnij na innych stronach

  • 0
3 godziny temu, yooniks napisał:

"Śmieszne błędy"? Po co bierzesz się za robienie pluginu skoro nawet nie wiesz ze stacktrace jest pewnie najważniejszy żeby rozwiązać ten problem. Block jest pewnie nullem lub getBlock zostało zmienione na coś innego lub blok po prostu nie istnieje

 

nikt nie ma czasu robić serwera i pluginu tylko żeby to przetestować skoro możesz dać błąd xD

Dobra sorry że nie dałem tego błędu nie przemyślałem tego. A co do robienia pluginu to każdy może je tworzyć bukkit dla mnie to tylko zabawa. Nie wszyscy rozumieją bukkita tak jak ty zrozum to.

 

Błąd:

 

Odnośnik do komentarza
https://skript.pl/temat/37047-getblock-settype/#findComment-236038
Udostępnij na innych stronach

  • 0
39 minut temu, Rejszpat napisał:

location.getBlock().setType(Material.BEDROCK)

z tym że location musisz sobie podmienić

Mordo ale ty nie rozumiesz ja właśnie mam identyczna linjke. Kod tej linijki masz wyżej na code.skript na samym dole. 

Odnośnik do komentarza
https://skript.pl/temat/37047-getblock-settype/#findComment-236060
Udostępnij na innych stronach

  • 0
18 godzin temu, Rejszpat napisał:

To co ty masz zdefiniowane pod block

Block block = player.getLocation().getBlock();

 

Próbowałem zrobić to na te dwa sposoby lecz nadal wywala błedy. sprawdziłem na 1.8.8 i działa te 1.15 jest przeklęte.

KOD #1:

 

Bład #1:

KOD #2:

Błąd #2:

 

Nieaktywny

Łączę posty.

Odnośnik do komentarza
https://skript.pl/temat/37047-getblock-settype/#findComment-236068
Udostępnij na innych stronach

  • 0
14 godzin temu, MocSwiatla320 napisał:

Próbowałem zrobić to na te dwa sposoby lecz nadal wywala błedy. sprawdziłem na 1.8.8 i działa te 1.15 jest przeklęte.

KOD #1:

 

Bład #1:

KOD #2:

Błąd #2:

 

nie widać błędów

Odnośnik do komentarza
https://skript.pl/temat/37047-getblock-settype/#findComment-236094
Udostępnij na innych stronach

  • 0

Myślę że to nie chodzi o to jeśli błąd wskazuje null dla CraftBlockData. Błąd nadal jest:

[17:50:08 WARN]: [test] Plugin test v1.0 generated an exception while executing task 4
java.lang.NullPointerException: null
at org.bukkit.craftbukkit.v1_15_R1.block.data.CraftBlockData.newData(CraftBlockData.java:544) ~[patched_1.15.2.jar:git-Paper-67]
at org.bukkit.craftbukkit.v1_15_R1.CraftServer.createBlockData(CraftServer.java:1934) ~[patched_1.15.2.jar:git-Paper-67]
at org.bukkit.craftbukkit.v1_15_R1.CraftServer.createBlockData(CraftServer.java:1909) ~[patched_1.15.2.jar:git-Paper-67]
at org.bukkit.Bukkit.createBlockData(Bukkit.java:1390) ~[patched_1.15.2.jar:git-Paper-67]
at org.bukkit.Material.createBlockData(Material.java:3380) ~[patched_1.15.2.jar:git-Paper-67]
at org.bukkit.craftbukkit.v1_15_R1.block.CraftBlock.setType(CraftBlock.java:164) ~[patched_1.15.2.jar:git-Paper-67]
at org.bukkit.craftbukkit.v1_15_R1.block.CraftBlock.setType(CraftBlock.java:158) ~[patched_1.15.2.jar:git-Paper-67]
at test.abc.test.Main$1.run(Main.java:24) ~[?:?]
at org.bukkit.craftbukkit.v1_15_R1.scheduler.CraftTask.run(CraftTask.java:84) ~[patched_1.15.2.jar:git-Paper-67]
at org.bukkit.craftbukkit.v1_15_R1.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:54) ~[patched_1.15.2.jar:git-Paper-67]
at com.destroystokyo.paper.ServerSchedulerReportingWrapper.run(ServerSchedulerReportingWrapper.java:22) ~[patched_1.15.2.jar:git-Paper-67]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:1.8.0_141]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:1.8.0_141]
at java.lang.Thread.run(Thread.java:748) [?:1.8.0_141]

KOD:

package test.abc.test;

import org.bukkit.Bukkit;
import org.bukkit.Material;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.block.BlockPlaceEvent;
import org.bukkit.plugin.java.JavaPlugin;

public class Main extends JavaPlugin implements Listener {

    public static Main instance;

    public void onEnable() {
        instance = this;
        Bukkit.getPluginManager().registerEvents(this, this);
    }

    @EventHandler
    public void onPlace(BlockPlaceEvent event) {
        Bukkit.getScheduler().scheduleAsyncDelayedTask(this, new Runnable() {
            @Override
            public void run() {
                event.getBlock().setType(Material.BEDROCK);
            }
        },20L);

    }

}

Nie wiem o co chodzi ale znalazłem na necie taki kod:

    @EventHandler
    public void onPlace(AsyncPlayerChatEvent event) {
        Bukkit.getScheduler().scheduleAsyncDelayedTask(this, new Runnable() {
            @Override
            public void run() {
                Bukkit.broadcastMessage("1");
                event.getPlayer().getLocation().getBlock().setBlockData(Material.RED_SAND.createBlockData());
                Bukkit.broadcastMessage("2");
            }
        },20L);
    }

gdy ustawie RED_SAND to działa a gdy ustawie BEDROCK to wywala i nie zmienia bloku

Edytowane przez MocSwiatla320
Kod
Odnośnik do komentarza
https://skript.pl/temat/37047-getblock-settype/#findComment-236112
Udostępnij na innych stronach

Nieaktywny
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...