FatBoy-DOTC
3 months ago
72 changed files with 584 additions and 535 deletions
@ -1,282 +0,0 @@
@@ -1,282 +0,0 @@
|
||||
// • ▌ ▄ ·. ▄▄▄· ▄▄ • ▪ ▄▄· ▄▄▄▄· ▄▄▄· ▐▄▄▄ ▄▄▄ .
|
||||
// ·██ ▐███▪▐█ ▀█ ▐█ ▀ ▪██ ▐█ ▌▪▐█ ▀█▪▐█ ▀█ •█▌ ▐█▐▌·
|
||||
// ▐█ ▌▐▌▐█·▄█▀▀█ ▄█ ▀█▄▐█·██ ▄▄▐█▀▀█▄▄█▀▀█ ▐█▐ ▐▌▐▀▀▀
|
||||
// ██ ██▌▐█▌▐█ ▪▐▌▐█▄▪▐█▐█▌▐███▌██▄▪▐█▐█ ▪▐▌██▐ █▌▐█▄▄▌
|
||||
// ▀▀ █▪▀▀▀ ▀ ▀ ·▀▀▀▀ ▀▀▀·▀▀▀ ·▀▀▀▀ ▀ ▀ ▀▀ █▪ ▀▀▀
|
||||
// Magicbane Emulator Project © 2013 - 2022
|
||||
// www.magicbane.com
|
||||
|
||||
|
||||
package engine.db.handlers; |
||||
|
||||
import engine.gameManager.DbManager; |
||||
import engine.gameManager.PowersManager; |
||||
import engine.mbEnums; |
||||
import engine.powers.EffectsBase; |
||||
import engine.powers.effectmodifiers.*; |
||||
import org.pmw.tinylog.Logger; |
||||
|
||||
import java.sql.Connection; |
||||
import java.sql.PreparedStatement; |
||||
import java.sql.ResultSet; |
||||
import java.sql.SQLException; |
||||
import java.util.HashSet; |
||||
|
||||
public class dbEffectsBaseHandler extends dbHandlerBase { |
||||
|
||||
public dbEffectsBaseHandler() { |
||||
|
||||
} |
||||
|
||||
public static void cacheAllEffectModifiers() { |
||||
|
||||
String IDString; |
||||
AbstractEffectModifier abstractEffectModifier = null; |
||||
|
||||
try (Connection connection = DbManager.getConnection(); |
||||
PreparedStatement prepareStatement = connection.prepareStatement("SELECT * FROM static_power_effectmod")) { |
||||
|
||||
ResultSet rs = prepareStatement.executeQuery(); |
||||
|
||||
while (rs.next()) { |
||||
|
||||
IDString = rs.getString("IDString"); |
||||
EffectsBase effectBase = PowersManager.getEffectByIDString(IDString); |
||||
mbEnums.ModType modifier = mbEnums.ModType.GetModType(rs.getString("modType")); |
||||
|
||||
//combine item prefix and suffix effect modifiers
|
||||
|
||||
abstractEffectModifier = getCombinedModifiers(abstractEffectModifier, rs, effectBase, modifier); |
||||
|
||||
if (abstractEffectModifier != null) { |
||||
|
||||
if (EffectsBase.modifiersMap.containsKey(effectBase.getIDString()) == false) |
||||
EffectsBase.modifiersMap.put(effectBase.getIDString(), new HashSet<>()); |
||||
|
||||
EffectsBase.modifiersMap.get(effectBase.getIDString()).add(abstractEffectModifier); |
||||
|
||||
} |
||||
|
||||
} |
||||
|
||||
} catch (Exception e) { |
||||
Logger.error(e); |
||||
} |
||||
|
||||
} |
||||
|
||||
public static AbstractEffectModifier getCombinedModifiers(AbstractEffectModifier abstractEffectModifier, ResultSet rs, EffectsBase effectBase, mbEnums.ModType modifier) throws SQLException { |
||||
switch (modifier) { |
||||
case AdjustAboveDmgCap: |
||||
abstractEffectModifier = new AdjustAboveDmgCapEffectModifier(rs); |
||||
break; |
||||
case Ambidexterity: |
||||
abstractEffectModifier = new AmbidexterityEffectModifier(rs); |
||||
break; |
||||
case AnimOverride: |
||||
break; |
||||
case ArmorPiercing: |
||||
abstractEffectModifier = new ArmorPiercingEffectModifier(rs); |
||||
break; |
||||
case AttackDelay: |
||||
abstractEffectModifier = new AttackDelayEffectModifier(rs); |
||||
break; |
||||
case Attr: |
||||
abstractEffectModifier = new AttributeEffectModifier(rs); |
||||
break; |
||||
case BlackMantle: |
||||
abstractEffectModifier = new BlackMantleEffectModifier(rs); |
||||
break; |
||||
case BladeTrails: |
||||
abstractEffectModifier = new BladeTrailsEffectModifier(rs); |
||||
break; |
||||
case Block: |
||||
abstractEffectModifier = new BlockEffectModifier(rs); |
||||
break; |
||||
case BlockedPowerType: |
||||
abstractEffectModifier = new BlockedPowerTypeEffectModifier(rs); |
||||
break; |
||||
case CannotAttack: |
||||
abstractEffectModifier = new CannotAttackEffectModifier(rs); |
||||
break; |
||||
case CannotCast: |
||||
abstractEffectModifier = new CannotCastEffectModifier(rs); |
||||
break; |
||||
case CannotMove: |
||||
abstractEffectModifier = new CannotMoveEffectModifier(rs); |
||||
break; |
||||
case CannotTrack: |
||||
abstractEffectModifier = new CannotTrackEffectModifier(rs); |
||||
break; |
||||
case Charmed: |
||||
abstractEffectModifier = new CharmedEffectModifier(rs); |
||||
break; |
||||
case ConstrainedAmbidexterity: |
||||
abstractEffectModifier = new ConstrainedAmbidexterityEffectModifier(rs); |
||||
break; |
||||
case DamageCap: |
||||
abstractEffectModifier = new DamageCapEffectModifier(rs); |
||||
break; |
||||
case DamageShield: |
||||
abstractEffectModifier = new DamageShieldEffectModifier(rs); |
||||
break; |
||||
case DCV: |
||||
abstractEffectModifier = new DCVEffectModifier(rs); |
||||
break; |
||||
case Dodge: |
||||
abstractEffectModifier = new DodgeEffectModifier(rs); |
||||
break; |
||||
case DR: |
||||
abstractEffectModifier = new DREffectModifier(rs); |
||||
break; |
||||
case Durability: |
||||
abstractEffectModifier = new DurabilityEffectModifier(rs); |
||||
break; |
||||
case ExclusiveDamageCap: |
||||
abstractEffectModifier = new ExclusiveDamageCapEffectModifier(rs); |
||||
break; |
||||
case Fade: |
||||
abstractEffectModifier = new FadeEffectModifier(rs); |
||||
break; |
||||
case Fly: |
||||
abstractEffectModifier = new FlyEffectModifier(rs); |
||||
break; |
||||
case Health: |
||||
abstractEffectModifier = new HealthEffectModifier(rs); |
||||
break; |
||||
case HealthFull: |
||||
abstractEffectModifier = new HealthFullEffectModifier(rs); |
||||
break; |
||||
case HealthRecoverRate: |
||||
abstractEffectModifier = new HealthRecoverRateEffectModifier(rs); |
||||
break; |
||||
case IgnoreDamageCap: |
||||
abstractEffectModifier = new IgnoreDamageCapEffectModifier(rs); |
||||
break; |
||||
case IgnorePassiveDefense: |
||||
abstractEffectModifier = new IgnorePassiveDefenseEffectModifier(rs); |
||||
break; |
||||
case ImmuneTo: |
||||
abstractEffectModifier = new ImmuneToEffectModifier(rs); |
||||
break; |
||||
case ImmuneToAttack: |
||||
abstractEffectModifier = new ImmuneToAttackEffectModifier(rs); |
||||
break; |
||||
case ImmuneToPowers: |
||||
abstractEffectModifier = new ImmuneToPowersEffectModifier(rs); |
||||
break; |
||||
case Invisible: |
||||
abstractEffectModifier = new InvisibleEffectModifier(rs); |
||||
break; |
||||
case ItemName: |
||||
abstractEffectModifier = new ItemNameEffectModifier(rs); |
||||
if (((ItemNameEffectModifier) abstractEffectModifier).name.isEmpty()) |
||||
break; |
||||
if (effectBase != null) |
||||
effectBase.setName((((ItemNameEffectModifier) abstractEffectModifier).name)); |
||||
break; |
||||
case Mana: |
||||
abstractEffectModifier = new ManaEffectModifier(rs); |
||||
break; |
||||
case ManaFull: |
||||
abstractEffectModifier = new ManaFullEffectModifier(rs); |
||||
break; |
||||
case ManaRecoverRate: |
||||
abstractEffectModifier = new ManaRecoverRateEffectModifier(rs); |
||||
break; |
||||
case MaxDamage: |
||||
abstractEffectModifier = new MaxDamageEffectModifier(rs); |
||||
break; |
||||
case MeleeDamageModifier: |
||||
abstractEffectModifier = new MeleeDamageEffectModifier(rs); |
||||
break; |
||||
case MinDamage: |
||||
abstractEffectModifier = new MinDamageEffectModifier(rs); |
||||
break; |
||||
case NoMod: |
||||
abstractEffectModifier = new NoModEffectModifier(rs); |
||||
break; |
||||
case OCV: |
||||
abstractEffectModifier = new OCVEffectModifier(rs); |
||||
break; |
||||
case Parry: |
||||
abstractEffectModifier = new ParryEffectModifier(rs); |
||||
break; |
||||
case PassiveDefense: |
||||
abstractEffectModifier = new PassiveDefenseEffectModifier(rs); |
||||
break; |
||||
case PowerCost: |
||||
abstractEffectModifier = new PowerCostEffectModifier(rs); |
||||
break; |
||||
case PowerCostHealth: |
||||
abstractEffectModifier = new PowerCostHealthEffectModifier(rs); |
||||
break; |
||||
case PowerDamageModifier: |
||||
abstractEffectModifier = new PowerDamageEffectModifier(rs); |
||||
break; |
||||
case ProtectionFrom: |
||||
abstractEffectModifier = new ProtectionFromEffectModifier(rs); |
||||
break; |
||||
case Resistance: |
||||
abstractEffectModifier = new ResistanceEffectModifier(rs); |
||||
break; |
||||
case ScaleHeight: |
||||
abstractEffectModifier = new ScaleHeightEffectModifier(rs); |
||||
break; |
||||
case ScaleWidth: |
||||
abstractEffectModifier = new ScaleWidthEffectModifier(rs); |
||||
break; |
||||
case ScanRange: |
||||
abstractEffectModifier = new ScanRangeEffectModifier(rs); |
||||
break; |
||||
case SeeInvisible: |
||||
abstractEffectModifier = new SeeInvisibleEffectModifier(rs); |
||||
break; |
||||
case Silenced: |
||||
abstractEffectModifier = new SilencedEffectModifier(rs); |
||||
break; |
||||
case Skill: |
||||
abstractEffectModifier = new SkillEffectModifier(rs); |
||||
break; |
||||
case Slay: |
||||
abstractEffectModifier = new SlayEffectModifier(rs); |
||||
break; |
||||
case Speed: |
||||
abstractEffectModifier = new SpeedEffectModifier(rs); |
||||
break; |
||||
case SpireBlock: |
||||
abstractEffectModifier = new SpireBlockEffectModifier(rs); |
||||
break; |
||||
case Stamina: |
||||
abstractEffectModifier = new StaminaEffectModifier(rs); |
||||
break; |
||||
case StaminaFull: |
||||
abstractEffectModifier = new StaminaFullEffectModifier(rs); |
||||
break; |
||||
case StaminaRecoverRate: |
||||
abstractEffectModifier = new StaminaRecoverRateEffectModifier(rs); |
||||
break; |
||||
case Stunned: |
||||
abstractEffectModifier = new StunnedEffectModifier(rs); |
||||
break; |
||||
case Value: |
||||
abstractEffectModifier = new ValueEffectModifier(rs); |
||||
if (effectBase != null) { |
||||
ValueEffectModifier valueEffect = (ValueEffectModifier) abstractEffectModifier; |
||||
effectBase.value = valueEffect.minMod; |
||||
} |
||||
break; |
||||
case WeaponProc: |
||||
abstractEffectModifier = new WeaponProcEffectModifier(rs); |
||||
break; |
||||
case WeaponRange: |
||||
abstractEffectModifier = new WeaponRangeEffectModifier(rs); |
||||
break; |
||||
case WeaponSpeed: |
||||
abstractEffectModifier = new WeaponSpeedEffectModifier(rs); |
||||
break; |
||||
|
||||
} |
||||
return abstractEffectModifier; |
||||
} |
||||
} |
@ -1,56 +0,0 @@
@@ -1,56 +0,0 @@
|
||||
// • ▌ ▄ ·. ▄▄▄· ▄▄ • ▪ ▄▄· ▄▄▄▄· ▄▄▄· ▐▄▄▄ ▄▄▄ .
|
||||
// ·██ ▐███▪▐█ ▀█ ▐█ ▀ ▪██ ▐█ ▌▪▐█ ▀█▪▐█ ▀█ •█▌ ▐█▐▌·
|
||||
// ▐█ ▌▐▌▐█·▄█▀▀█ ▄█ ▀█▄▐█·██ ▄▄▐█▀▀█▄▄█▀▀█ ▐█▐ ▐▌▐▀▀▀
|
||||
// ██ ██▌▐█▌▐█ ▪▐▌▐█▄▪▐█▐█▌▐███▌██▄▪▐█▐█ ▪▐▌██▐ █▌▐█▄▄▌
|
||||
// ▀▀ █▪▀▀▀ ▀ ▀ ·▀▀▀▀ ▀▀▀·▀▀▀ ·▀▀▀▀ ▀ ▀ ▀▀ █▪ ▀▀▀
|
||||
// Magicbane Emulator Project © 2013 - 2022
|
||||
// www.magicbane.com
|
||||
|
||||
|
||||
package engine.db.handlers; |
||||
|
||||
import engine.gameManager.DbManager; |
||||
import engine.gameManager.PowersManager; |
||||
import engine.mbEnums; |
||||
import engine.objects.Mob; |
||||
import engine.powers.EffectsBase; |
||||
import org.pmw.tinylog.Logger; |
||||
|
||||
import java.sql.Connection; |
||||
import java.sql.PreparedStatement; |
||||
import java.sql.ResultSet; |
||||
import java.util.HashSet; |
||||
|
||||
public class dbPowerHandler extends dbHandlerBase { |
||||
|
||||
public dbPowerHandler() { |
||||
this.localClass = Mob.class; |
||||
this.localObjectType = mbEnums.GameObjectType.valueOf(this.localClass.getSimpleName()); |
||||
} |
||||
public static void addAllAnimationOverrides() { |
||||
|
||||
try (Connection connection = DbManager.getConnection(); |
||||
PreparedStatement preparedStatement = connection.prepareStatement("SELECT * FROM static_power_animation_override")) { |
||||
|
||||
ResultSet rs = preparedStatement.executeQuery(); |
||||
|
||||
String IDString; |
||||
int animation; |
||||
while (rs.next()) { |
||||
IDString = rs.getString("IDString"); |
||||
|
||||
EffectsBase eb = PowersManager.getEffectByIDString(IDString); |
||||
if (eb != null) |
||||
IDString = eb.getIDString(); |
||||
|
||||
animation = rs.getInt("animation"); |
||||
PowersManager.AnimationOverrides.put(IDString, animation); |
||||
|
||||
} |
||||
} catch (Exception e) { |
||||
Logger.error(e); |
||||
} |
||||
|
||||
} |
||||
|
||||
} |
Loading…
Reference in new issue