001/* 002 * Trident - A Multithreaded Server Alternative 003 * Copyright 2014 The TridentSDK Team 004 * 005 * Licensed under the Apache License, Version 2.0 (the "License"); 006 * you may not use this file except in compliance with the License. 007 * You may obtain a copy of the License at 008 * 009 * http://www.apache.org/licenses/LICENSE-2.0 010 * 011 * Unless required by applicable law or agreed to in writing, software 012 * distributed under the License is distributed on an "AS IS" BASIS, 013 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 014 * See the License for the specific language governing permissions and 015 * limitations under the License. 016 */ 017 018package net.tridentsdk.server.entity.living; 019 020import net.tridentsdk.base.Position; 021import net.tridentsdk.entity.Entity; 022import net.tridentsdk.entity.living.Ocelot; 023import net.tridentsdk.entity.living.Player; 024import net.tridentsdk.entity.types.EntityType; 025import net.tridentsdk.entity.types.OcelotType; 026import net.tridentsdk.event.entity.EntityDamageEvent; 027import net.tridentsdk.server.data.MetadataType; 028import net.tridentsdk.server.data.ProtocolMetadata; 029import net.tridentsdk.server.entity.TridentTameable; 030 031import java.util.UUID; 032 033public class TridentOcelot extends TridentTameable implements Ocelot { 034 private final OcelotType breed; 035 036 public TridentOcelot(UUID id, Position spawnLocation) { 037 super(id, spawnLocation); 038 this.breed = OcelotType.WILD; 039 } 040 041 @Override 042 protected void doEncodeMeta(ProtocolMetadata protocolMeta) { 043 protocolMeta.setMeta(18, MetadataType.BYTE, (byte) breed.asInt()); 044 } 045 046 @Override 047 public OcelotType breed() { 048 return breed; 049 } 050 051 @Override 052 public void hide(Entity entity) { 053 } 054 055 @Override 056 public void show(Entity entity) { 057 } 058 059 @Override 060 public EntityDamageEvent lastDamageEvent() { 061 return null; 062 } 063 064 @Override 065 public Player lastPlayerDamager() { 066 return null; 067 } 068 069 @Override 070 public EntityType type() { 071 return EntityType.OCELOT; 072 } 073}