yeah but what file would i move the character to?I would assume it would be something as simple as copying and pasting the character from one folder to the other, though you wouldn't be able to return him after (Considering that's how it was with tConfig and tapi)
using System;
using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Graphics;
using Terraria;
using Terraria.ID;
using Terraria.ModLoader;
namespace SacredTools.Projectiles
{
public class MoonBeam : ModProjectile
{
public override void SetDefaults()
{
projectile.name = "Moon Beam"; //projectile name
projectile.width = 20; //projectile width
projectile.height = 28; //projectile height
projectile.friendly = true; //make that the projectile will not damage you
projectile.melee = true; //
projectile.tileCollide = true; //make that the projectile will be destroed if it hits the terrain
projectile.penetrate = 5; //how many npc will penetrate
projectile.timeLeft = 200; //how many time this projectile has before disepire
projectile.light = 0.75f; // projectile light
projectile.extraUpdates = 1;
projectile.ignoreWater = true;
}
public override void AI() //this make that the projectile will face the corect way
{ // |
projectile.rotation = (float)Math.Atan2((double)projectile.velocity.Y, (double)projectile.velocity.X) + 1.57f;
projectile.velocity.Y += projectile.ai[0];
if (projectile.localAI[0] == 0f)
{
Main.PlaySound(2, (int)projectile.position.X, (int)projectile.position.Y, 20);
projectile.localAI[0] = 1f;
}
int num666 = 8;
Color color = new Color(36, 158, 184);
int rand = Main.rand.Next(4);
switch (rand)
{
case 0:
color = new Color(255, 135, 0);
break;
case 1:
color = new Color(255, 0, 248);
break;
case 2:
color = new Color(28, 201, 132);
break;
case 3:
color = new Color(9, 222, 255);
break;
}
int num667 = Dust.NewDust(new Vector2(projectile.position.X + (float)num666 + 6, projectile.position.Y + (float)num666), projectile.width - num666 * 2, projectile.height - num666 * 2, 66, 0f, 0f, 0,color, 1.5f); //projectile dust color
Main.dust[num667].velocity *= 0.5f;
Main.dust[num667].velocity += projectile.velocity * 0.1f;
Main.dust[num667].noGravity = true;
Main.dust[num667].noLight = false;
Main.dust[num667].scale = 1.5f;
}
public override void OnHitNPC(NPC target, int damage, float knockback, bool crit)
{
target.AddBuff(mod.BuffType("MoonCurse"), 500);
target.AddBuff(BuffID.Chilled, 500);
target.AddBuff(BuffID.Frostburn, 500);
}
public override void Kill(int timeLeft)
{
for (int i = 4; i < 31; i++)
{
Color color = new Color(36, 158, 184);
int rand = Main.rand.Next(4);
switch (rand)
{
case 0:
color = new Color(255, 135, 0);
break;
case 1:
color = new Color(255, 0, 248);
break;
case 2:
color = new Color(28, 201, 132);
break;
case 3:
color = new Color(9, 222, 255);
break;
}
float x = projectile.oldVelocity.X * (30f / i);
float y = projectile.oldVelocity.Y * (30f / i);
int newDust = Dust.NewDust(new Vector2(projectile.oldPosition.X - x, projectile.oldPosition.Y - y), 8, 8, 66, projectile.oldVelocity.X, projectile.oldVelocity.Y, 100, color, 1.8f);
Main.dust[newDust].noGravity = true;
Main.dust[newDust].velocity *= 0.5f;
newDust = Dust.NewDust(new Vector2(projectile.oldPosition.X - x, projectile.oldPosition.Y - y), 8, 8, 66, projectile.oldVelocity.X, projectile.oldVelocity.Y, 100, color, 1.4f);
Main.dust[newDust].velocity *= 0.05f;
Main.dust[newDust].noGravity = true;
}
}
}
}
There would be a folder with the exact same name in the tmodloader folder as there would be for the character folder for the base game.yeah but what file would i move the character to?
Thank you!There would be a folder with the exact same name in the tmodloader folder as there would be for the character folder for the base game.
View attachment 126501
View attachment 126502
See how they both have a players folder? Just port the character from one folder to the other
Is there a way to modify what the vanilla NPCs sell? I want my merchant to sell wood
public class NPCloot : GlobalNPC
{
public override void SetupShop(int type, Chest shop, ref int nextSlot)
{
if (type == NPCID.Merchant)
{
// example condition.
if (NPC.downedBoss1 && NPC.downedSlimeKing && NPC.downedQueenBee)
{
shop.item[nextSlot].SetDefaults(ItemID.Wood); // Maybe not "Wood", ah ah.
nextSlot++;
}
}
base.SetupShop(type, shop, ref nextSlot);
} }
If you have not idea here put that, go look example mod, he answer you.Code:public class NPCloot : GlobalNPC { public override void SetupShop(int type, Chest shop, ref int nextSlot) { if (type == NPCID.Merchant) { // example condition. if (NPC.downedBoss1 && NPC.downedSlimeKing && NPC.downedQueenBee) { shop.item[nextSlot].SetDefaults(ItemID.Wood (ot other)); nextSlot++; } } base.SetupShop(type, shop, ref nextSlot); } }
You can start it through host and play or the bat files included in the install.Is it possible to make a modded Steam server? If so, how?
Probably because you are adding 6 to the horizontal position of the dust's spawn point.k... also, why does the dust from my projectile generate a few pixels offset from the impact point??
int num667 = Dust.NewDust(new Vector2(projectile.position.X + (float)num666 + 6, projectile.position.Y + (float)num666), projectile.width - num666 * 2, projectile.height - num666 * 2, 66, 0f, 0f, 0,color, 1.5f); //projectile dust color