Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Bukkit - czy to będzie lagować?


Rekomendowane odpowiedzi

Opublikowano

Pytanie do specjalistów z MPCForum, najmądrzejszych plugino-pisarzy:

"Czy to coś poniżej będzie lagować serwer ?"(to będzie jeszcze z 3 razy tyle)

p.getLocation().subtract(0, 1, 0).getBlock().setType(Material.OBSIDIAN);
p.getLocation().subtract(1, 1, 0).getBlock().setType(Material.OBSIDIAN);
p.getLocation().subtract(0, 1, 1).getBlock().setType(Material.OBSIDIAN);
p.getLocation().subtract(1, 1, 1).getBlock().setType(Material.OBSIDIAN);
p.getLocation().subtract(-1, 1, 0).getBlock().setType(Material.OBSIDIAN);
p.getLocation().subtract(0, 1, -1).getBlock().setType(Material.OBSIDIAN);
p.getLocation().subtract(-1, 1, -1).getBlock().setType(Material.OBSIDIAN);
p.getLocation().subtract(0, 1, -1).getBlock().setType(Material.OBSIDIAN);
p.getLocation().subtract(1, 1, -1).getBlock().setType(Material.OBSIDIAN);
p.getLocation().subtract(-1, 1, 1).getBlock().setType(Material.OBSIDIAN);
p.getLocation().subtract(0, 0, 0).getBlock().setType(Material.AIR);
p.getLocation().subtract(1, 0, 0).getBlock().setType(Material.AIR);		
p.getLocation().subtract(0, 0, 1).getBlock().setType(Material.AIR);		
p.getLocation().subtract(1, 0, 1).getBlock().setType(Material.AIR);
p.getLocation().subtract(-1, 0, 0).getBlock().setType(Material.AIR);
p.getLocation().subtract(0, 0, -1).getBlock().setType(Material.AIR);
p.getLocation().subtract(-1, 0, -1).getBlock().setType(Material.AIR);
p.getLocation().subtract(0, 0, -1).getBlock().setType(Material.AIR);
p.getLocation().subtract(1, 0, -1).getBlock().setType(Material.AIR);
p.getLocation().subtract(-1, 0, 1).getBlock().setType(Material.AIR);
p.getLocation().subtract(0, -1, 0).getBlock().setType(Material.AIR);
p.getLocation().subtract(1, -1, 0).getBlock().setType(Material.AIR);
p.getLocation().subtract(0, -1, 1).getBlock().setType(Material.AIR);
p.getLocation().subtract(1, -1, 1).getBlock().setType(Material.AIR);
p.getLocation().subtract(-1, -1, 0).getBlock().setType(Material.AIR);
p.getLocation().subtract(0, -1, -1).getBlock().setType(Material.AIR);
p.getLocation().subtract(-1, -1, -1).getBlock().setType(Material.AIR);
p.getLocation().subtract(0, -1, -1).getBlock().setType(Material.AIR);
p.getLocation().subtract(1, -1, -1).getBlock().setType(Material.AIR);
p.getLocation().subtract(-1, -1, 1).getBlock().setType(Material.AIR);
p.getLocation().subtract(0, -2, 0).getBlock().setType(Material.AIR);
p.getLocation().subtract(1, -2, 0).getBlock().setType(Material.AIR);
p.getLocation().subtract(0, -2, 1).getBlock().setType(Material.AIR);
p.getLocation().subtract(1, -2, 1).getBlock().setType(Material.AIR);
p.getLocation().subtract(-1, -2, 0).getBlock().setType(Material.AIR);
p.getLocation().subtract(0, -2, -1).getBlock().setType(Material.AIR);
p.getLocation().subtract(-1, -2, -1).getBlock().setType(Material.AIR);
p.getLocation().subtract(0, -2, -1).getBlock().setType(Material.AIR);
p.getLocation().subtract(1, -2, -1).getBlock().setType(Material.AIR);
p.getLocation().subtract(-1, -2, 1).getBlock().setType(Material.AIR);
Opublikowano

Zależy, na jakiej maszynie się bawisz :D

Jeśli na takiej przeciętnej, najwyżej może być mała "ścinka" i potem wszystko dobrze.

Opublikowano

pewnie do boyfarmer'a, tak samo to robiłem - lagi były ale chwilowe.

Jeżeli do boy'a to raczej tak to powinno być (pisane z głowy)

for(int i =0; i < 60;i++) {
  mapa.add(new Location("world"), x,y + i,z);
}

A potem set'tuje blocki while i tyle xD

 

 

­

Opublikowano


To już zrobić algorytm zapisać do mapy, i setować.
Ta metoda będzie szybsza,łatwiejsza. Bo ­
subtract będzie lagowało.

Opublikowano

 

Jeżeli do boy'a to raczej tak to powinno być (pisane z głowy)

for(int i =0; i < 60;i++) {
  mapa.add(new Location("world"), x,y + i,z);
}

A potem set'tuje blocki while i tyle xD

 

 

­

 

 

Ooo, widzę cwaniaczka, który mi na profilu sie chwalił telefonem, ale jak ja Ci mojego screena pokazałem to dlaczego posta usunąłeś ?

 

@topic

Po co tyle kodu jak to można w pętli zrobić :D

 

masz tu mój stary kod :)

    public void onBlockPlace(final BlockPlaceEvent e) {
        if (e.getItemInHand().getItemMeta().equals(boyfarmer)) {
            final Location location = e.getBlock().getLocation();
            final Location locBlock = location.clone();
            int i;
            for (i = 0, i = (int)(location.getY() - 1.0); i > 0; --i) {
             if(i <= 64){
                    locBlock.setY((double)i);
                    locBlock.getBlock().setType(Material.OBSIDIAN);
             }
            }
         if(location.getY() >= 65) {
         e.getPlayer().sendMessage("§8» §6Polozyles boyfarmera za wysoko");
         e.getPlayer().sendMessage("§8» §6Obsydian stworzyl sie od: §3 y: 64"); 
                location.getBlock().setType(Material.AIR);
         }else{
            location.getBlock().setType(Material.OBSIDIAN);
         }
        }
    }
Opublikowano

 

Pytanie do specjalistów z MPCForum, najmądrzejszych plugino-pisarzy:

"Czy to coś poniżej będzie lagować serwer ?"(to będzie jeszcze z 3 razy tyle)

p.getLocation().subtract(0, 1, 0).getBlock().setType(Material.OBSIDIAN);
p.getLocation().subtract(1, 1, 0).getBlock().setType(Material.OBSIDIAN);
p.getLocation().subtract(0, 1, 1).getBlock().setType(Material.OBSIDIAN);
p.getLocation().subtract(1, 1, 1).getBlock().setType(Material.OBSIDIAN);
p.getLocation().subtract(-1, 1, 0).getBlock().setType(Material.OBSIDIAN);
p.getLocation().subtract(0, 1, -1).getBlock().setType(Material.OBSIDIAN);
p.getLocation().subtract(-1, 1, -1).getBlock().setType(Material.OBSIDIAN);
p.getLocation().subtract(0, 1, -1).getBlock().setType(Material.OBSIDIAN);
p.getLocation().subtract(1, 1, -1).getBlock().setType(Material.OBSIDIAN);
p.getLocation().subtract(-1, 1, 1).getBlock().setType(Material.OBSIDIAN);
p.getLocation().subtract(0, 0, 0).getBlock().setType(Material.AIR);
p.getLocation().subtract(1, 0, 0).getBlock().setType(Material.AIR);		
p.getLocation().subtract(0, 0, 1).getBlock().setType(Material.AIR);		
p.getLocation().subtract(1, 0, 1).getBlock().setType(Material.AIR);
p.getLocation().subtract(-1, 0, 0).getBlock().setType(Material.AIR);
p.getLocation().subtract(0, 0, -1).getBlock().setType(Material.AIR);
p.getLocation().subtract(-1, 0, -1).getBlock().setType(Material.AIR);
p.getLocation().subtract(0, 0, -1).getBlock().setType(Material.AIR);
p.getLocation().subtract(1, 0, -1).getBlock().setType(Material.AIR);
p.getLocation().subtract(-1, 0, 1).getBlock().setType(Material.AIR);
p.getLocation().subtract(0, -1, 0).getBlock().setType(Material.AIR);
p.getLocation().subtract(1, -1, 0).getBlock().setType(Material.AIR);
p.getLocation().subtract(0, -1, 1).getBlock().setType(Material.AIR);
p.getLocation().subtract(1, -1, 1).getBlock().setType(Material.AIR);
p.getLocation().subtract(-1, -1, 0).getBlock().setType(Material.AIR);
p.getLocation().subtract(0, -1, -1).getBlock().setType(Material.AIR);
p.getLocation().subtract(-1, -1, -1).getBlock().setType(Material.AIR);
p.getLocation().subtract(0, -1, -1).getBlock().setType(Material.AIR);
p.getLocation().subtract(1, -1, -1).getBlock().setType(Material.AIR);
p.getLocation().subtract(-1, -1, 1).getBlock().setType(Material.AIR);
p.getLocation().subtract(0, -2, 0).getBlock().setType(Material.AIR);
p.getLocation().subtract(1, -2, 0).getBlock().setType(Material.AIR);
p.getLocation().subtract(0, -2, 1).getBlock().setType(Material.AIR);
p.getLocation().subtract(1, -2, 1).getBlock().setType(Material.AIR);
p.getLocation().subtract(-1, -2, 0).getBlock().setType(Material.AIR);
p.getLocation().subtract(0, -2, -1).getBlock().setType(Material.AIR);
p.getLocation().subtract(-1, -2, -1).getBlock().setType(Material.AIR);
p.getLocation().subtract(0, -2, -1).getBlock().setType(Material.AIR);
p.getLocation().subtract(1, -2, -1).getBlock().setType(Material.AIR);
p.getLocation().subtract(-1, -2, 1).getBlock().setType(Material.AIR);

for(int i = 0; i < 30; i++)

https://bukkit.org/threads/create-hollow-cube.185024/

 

co do lagow - przy wiekszej ilosci blokow moze zlagowac

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...