Хостинг серверов Minecraft playvds.com
  1. Вы находитесь в русском сообществе Bukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на русский язык плагины наших собратьев из других стран.
    Скрыть объявление

[Проблема] [MOD_FORGE] В создании мода столкнулся с одной проблемой

Тема в разделе "Запросы на разработку плагинов", создана пользователем cookie_Dice, 6 сен 2013.

  1. Автор темы
    cookie_Dice

    cookie_Dice Активный участник

    Баллы:
    78
    Имя в Minecraft:
    Unknown_
    Простите за оффтоп, но проблема насущная, которая позволит решить много проблем. Есть игрок, есть высота. Надо сделать так, что бы игрок, пересекая определенную высоту получал урон после некоторого времени, а именно после 35 секунд, по 1 хп в секунду. Вот собственно код, который я пробовал написать, но что то он не работает. Подскажите как решить проблему.
    Код:
    package com.metro2033.radiation;
     
    import java.util.EnumSet;
     
    import net.minecraft.client.Minecraft;
    import net.minecraft.client.entity.EntityClientPlayerMP;
    import net.minecraft.client.gui.ScaledResolution;
    import net.minecraft.client.renderer.Tessellator;
    import net.minecraft.item.ItemStack;
     
    import org.lwjgl.opengl.GL11;
     
    import com.metro2033.METRO;
    import com.metro2033.gui.GasMaskOverlay;
     
    import cpw.mods.fml.common.ITickHandler;
    import cpw.mods.fml.common.TickType;
     
    public class Radiation implements ITickHandler
    {   
        byte timer=0;
       
        @Override
        public void tickStart(EnumSet<TickType> type, Object... tickData) {}
     
        @Override
        public void tickEnd(EnumSet<TickType> type, Object... tickData)
        {
            if(Minecraft.getMinecraft().thePlayer==null) return;
            ItemStack helmet = Minecraft.getMinecraft().thePlayer.inventory.armorItemInSlot(3);
            if(Minecraft.getMinecraft().thePlayer.posY <= 70) return;
            if(helmet == null || helmet.itemID != METRO.GasMaskA1.itemID)
            {
                if(timer>35)
                {
                    Minecraft.getMinecraft().thePlayer.setHealth(Minecraft.getMinecraft().thePlayer.getHealth()-1);
                    timer=0;
                }
            timer++;
            }
        }
     
        @Override
        public EnumSet<TickType> ticks()
        {
            return EnumSet.of(TickType.RENDER);
        }
     
        @Override
        public String getLabel()
        {
            return "Radiation tick handler";
        }
     
    }
    
     
  2. Хостинг MineCraft
    <

Поделиться этой страницей