public override void ModifyTooltips(List <TooltipLine> tooltips) { foreach (TooltipLine line in tooltips) { if (line.Name.Equals("Tooltip0")) { line.text = $"Casing: {casingItem?.Name??"null"}\nPower Cell: {powerCellItem?.Name??"null"}; charge:{getCharge.value}"; } else if (line.Name.Equals("Tooltip1")) { line.text = $"Lens: {lensItem?.Name??"null"}"; line.overrideColor = LensGlobalItem.getColor(lensItem); } else if (line.Name.Equals("Tooltip2")) { string name = driveItem?.Value?.Name; if (string.IsNullOrWhiteSpace(name)) { name = "none"; } line.text = $"Drive: {name}"; break; } } }
public override bool Shoot(Player player, ref Vector2 position, ref float speedX, ref float speedY, ref int type, ref int damage, ref float knockBack) { if (drive is null) { return(false); } float c = maxCharge; RefWrapper <float> projCharge = getCharge; //Main.NewText($"{getCharge}/{c}"); if (powerCellItem.type == ItemID.LihzahrdPowerCell) { RefWrapper <float> charge = powerCellItem.GetGlobalItem <PowerCellGlobalItem>().charge; if (charge.value < PowerCellGlobalItem.LihzahrdMaxCharge) { return(false); } projCharge = maxCharge; charge.value = 0; } base.Shoot(player, ref position, ref speedX, ref speedY, ref type, ref damage, ref knockBack); ActionContext context = ((BasicGlyphProjectile)Main.projectile[lastProj].modProjectile).context; context.charge = projCharge; context.Caster = player; context.color = LensGlobalItem.getColor(lensItem); //((BasicGlyphProjectile)Main.projectile[lastProj].modProjectile).context.charge = projCharge; //((BasicGlyphProjectile)Main.projectile[lastProj].modProjectile).context.Caster = player; //((BasicGlyphProjectile)Main.projectile[lastProj].modProjectile).context.color = LensGlobalItem.getColor(lensItem); return(false); }
public override void SetDefaults() { if (item.owner < 0 || item.owner >= Main.player.Length || !Main.player[item.owner].active) { return; } base.SetDefaults(); if (driveItem is null) { driveItem = new Ref <Item>(new Item()); driveItem.Value.SetDefaults(0); } if (powerCellItem is null) { powerCellItem = new Item(); powerCellItem.SetDefaults(0); } if (lensItem is null) { lensItem = new Item(); lensItem.SetDefaults(0); } if (casingItem is null) { casingItem = new Item(); casingItem.SetDefaults(0); } int dmg = item.damage; float damage = 1f; if (!(casing is null)) { casing.getStats(item, ref damage); } if (!(powerCell is null)) { powerCell.getStats(item, ref damage); } LensGlobalItem.getStats(lensItem, item, ref damage, ref item.shootSpeed); if (item.damage == dmg) { item.damage = (int)damage; } }