Скорее всего тебе придётся сделать сетевой обмен.
Клиент пошлёт на сервер пакет, а сервер, в свою очередь, заспавнит Entity в мир.
А пошевелить мозгами и убрать это не пробовал?
/** This is set to true for client worlds, and false for server worlds. */
public boolean isRemote;
Спавнить надо в обоих мирах, то есть серверном и клиентском.
А пошевелить мозгами и убрать это не пробовал?
/** This is set to true for client worlds, and false for server worlds. */
public boolean isRemote;
Спавнить надо в обоих мирах, то есть серверном и клиентском.
Нет, не надо. А пакеты вообще нужны, только если что-то совсем новое делаешь.
[merge_posts_bbcode]Ибо нефиг[/merge_posts_bbcode]
Возможно, у тебя в коде самой энтити что-то неправильно, запсти.
Источник: minecraft-kak.ru
Я на 100% Превратился в ЭДИСОНА на Моем Сервере в Майнкрафт
Не видно игроков и мобов
Написал 23.06.2015 — 12:07
#2
Cyxapuk
- Ник в Minecraft:
Meegoo
Написал 25.06.2015 — 14:00
Хитбоксы есть? f3+b
#3
eXheTz
Написал 25.06.2015 — 17:11
#4
eXheTz
Написал 28.06.2015 — 01:12
Количество пользователей, читающих эту тему: 0
0 пользователей, 0 гостей, 0 анонимных
Ответить цитируемым сообщениям Очистить
- Minecrafting.ru
- → Обсуждение игры
- → Технические проблемы
- Русский (RU)
- English (USA)
- Русский (RU)
Источник: minecrafting.ru
[1.6.4] Мой энтити не видно другим игрокам на сервере
Здравствуйте.
Что нужно прописать в коде, чтобы мой энтити видели все игроки на сервере, а не только тот, кто его спаунит?
TaoGunner
Скорее всего тебе придётся сделать сетевой обмен.
Клиент пошлёт на сервер пакет, а сервер, в свою очередь, заспавнит Entity в мир.
Самая крутая вещь в С++ — это не писать на нем, а показывать всем в онлайне, что Java говно.
В некроверсиях ниже 1.10 не разбираюсь
Dragon2488
А с хренали твою энтити видно только тому кто спавнит?
BlackCrafter
Dragon2488 написал(а):
А с хренали твою энтити видно только тому кто спавнит?
Объясняю на примере.
На сервере два игрока. Первый спаунит кастомный энтити, а второй смотрит и нихрена не видит.
Oldestkon
1,990 18 105
Ну на клиенте спавнит он значит. Проверяй серверСайд, смотри код яиц. Никаких там пакетов самому отсылать не надо, хрень несут.
Уууууууууу
Dragon2488
Вот именно.
BlackCrafter
Oldestkon написал(а):
Ну на клиенте спавнит он значит. Проверяй серверСайд, смотри код яиц
Ну код яйца, стрелы и снежка я и так смотрел прежде чем тему запостить.
Там везде примерно это:
public ItemStack onItemRightClick(ItemStack par1ItemStack, World par2World, EntityPlayer par3EntityPlayer) < if (!par3EntityPlayer.capabilities.isCreativeMode) < —par1ItemStack.stackSize; >par2World.playSoundAtEntity(par3EntityPlayer, «random.bow», 0.5F, 0.4F / (itemRand.nextFloat() * 0.4F + 0.8F)); if (!par2World.isRemote) < par2World.spawnEntityInWorld(new EntityEgg(par2World, par3EntityPlayer)); >return par1ItemStack; >
а у меня вот:
public ItemStack onItemRightClick(ItemStack par1ItemStack, World world, EntityPlayer player) < if (!world.isRemote)< world.spawnEntityInWorld(new EntityEffect1(world,player)); >return par1ItemStack; >
Фактически, то же самое. Если убираю !, то есть делаю isRemote==true (как в яйце), то клиент крашится (или сервер — если я на сервере).
Oldestkon написал(а):
Проверяй серверСайд,
конкретно где и как проверять?
Dragon2488
А пошевелить мозгами и убрать это не пробовал?
/** This is set to true for client worlds, and false for server worlds. */
public boolean isRemote;
Спавнить надо в обоих мирах, то есть серверном и клиентском.
Majestic
Dragon2488 написал(а):
А пошевелить мозгами и убрать это не пробовал?
/** This is set to true for client worlds, and false for server worlds. */
public boolean isRemote;
Спавнить надо в обоих мирах, то есть серверном и клиентском.
Всегда спавнили энтити на сервере.
Я — Agravaine.
Все вопросы туда.
Этот аккаунт неактивен.
laz2727
Нет, не надо. А пакеты вообще нужны, только если что-то совсем новое делаешь.
[merge_posts_bbcode]Ибо нефиг[/merge_posts_bbcode]
Возможно, у тебя в коде самой энтити что-то неправильно, запсти.
Java — это, во многих отношениях, —С#
Dragon2488
Я всегда спавнил без этой проверки и никогда её не юзал, и все работало.
Majestic
Dragon2488 написал(а):
Я всегда спавнил без этой проверки и никогда её не юзал, и все работало.
Будет же два энтити лететь: один нормальный, другой — призрычный =)
Я — Agravaine.
Все вопросы туда.
Этот аккаунт неактивен.
Dragon2488
Ну не знаю, я фантомов не вижу, хотя не юзаю проверку.
BlackCrafter
Dragon2488 написал(а):
Спавнить надо в обоих мирах
laz2727 написал(а):
Нет, не надо
мужики, вы уж определитесь
Dragon2488 написал(а):
А пошевелить мозгами и убрать это не пробовал?
это называется «метод тыка’
Dragon2488
Покажи код энтити и её рендер, тогда уж точно скажем.
BlackCrafter
Dragon2488 написал(а):
Покажи код энтити и её рендер, тогда уж точно скажем.
пошевелил мозгами, убрал проверку — сервер крашится.
Вот энтити:
рендера нет, я просто делаю вот так:
RenderingRegistry.registerEntityRenderingHandler(EntityEffect1.class, new RenderEntityFireworkItem(mod_Fireworks.itemFirework1));
Dragon2488
BlackCrafter
Dragon2488 написал(а):
И ты еще пытаешься сделать чтоб её видели другие игроки?
я пытаюсь узнать, как это делается.
Majestic
Убери везде SideOnly и Minecraft.getMinecraft().effectRenderer.addEffect((EntityFX)spark);
Я — Agravaine.
Все вопросы туда.
Этот аккаунт неактивен.
BlackCrafter
Majestic написал(а):
Убери везде SideOnly и Minecraft.getMinecraft().effectRenderer.addEffect((EntityFX)spark);
Тогда как спаунить второй энтити?
Источник: forum.mcmodding.ru