Classe ModNPC
Classe base para criar NPCs, inimigos e chefes personalizados.
Visão Geral
A classe ModNPC permite criar personagens não-jogáveis personalizados, incluindo NPCs amigáveis, inimigos e chefes com comportamentos de IA personalizados. Isso se baseia em conceitos do ModItem, então revise-o primeiro se você é novo no desenvolvimento com tModLoader.
Exemplo de Inimigo Básico
using Terraria;
using Terraria.ID;
using Terraria.ModLoader;
namespace YourMod.NPCs
{
public class ExampleEnemy : ModNPC
{
public override void SetStaticDefaults()
{
Main.npcFrameCount[Type] = 6; // Number of animation frames
}
public override void SetDefaults()
{
NPC.width = 40;
NPC.height = 40;
NPC.damage = 20;
NPC.defense = 10;
NPC.lifeMax = 100;
NPC.HitSound = SoundID.NPCHit1;
NPC.DeathSound = SoundID.NPCDeath1;
NPC.value = 100f; // Money dropped
NPC.knockBackResist = 0.5f;
NPC.aiStyle = NPCAIStyleID.Fighter; // Zombie-like AI
}
public override float SpawnChance(NPCSpawnInfo spawnInfo)
{
return SpawnCondition.OverworldNightMonster.Chance * 0.1f;
}
}
}
Criando um Chefe
Chefes exigem uma configuração mais complexa com IA personalizada:
public class ExampleBoss : ModNPC
{
public override void SetStaticDefaults()
{
Main.npcFrameCount[Type] = 4;
NPCID.Sets.BossBestiaryPriority.Add(Type);
}
public override void SetDefaults()
{
NPC.width = 100;
NPC.height = 100;
NPC.damage = 40;
NPC.defense = 15;
NPC.lifeMax = 5000;
NPC.boss = true; // Mark as boss
NPC.npcSlots = 10f;
NPC.value = Item.buyPrice(gold: 5);
NPC.knockBackResist = 0f; // Immune to knockback
NPC.noGravity = true; // Flies
NPC.noTileCollide = true;
Music = MusicID.Boss1;
}
public override void AI()
{
// Custom AI code here
}
}
Guia de Propriedades do NPC
aiStyle
Padrões de IA integrados:
- • Fighter (tipo zumbi)
- • Flying (tipo morcego)
- • Worm (segmentado)
- • Custom (crie o seu)
boss
Marcar NPC como chefe:
- • Mostra barra de vida
- • Impede o desaparecimento
- • Música de chefe toca
- • Efeitos especiais de morte
Saiba Mais
Para documentação completa do ModNPC com exemplos de IA:
Ver Documentação Completa do ModNPCPara documentação completa do ModNPC:
Ver Documentação Completa