| 12-11-2009, 12:18 PM | #1 |
Sup! I made a little module for my inventory system, however, I am not sure if it will work correctly. I was trying to make a module for the BonusMod library. JASS://! textmacro CIItemBonus_BonusMacro takes type, shortkey method operator $shortkey$ takes nothing returns integer return .Bonus$type$ endmethod method operator $shortkey$= takes integer i returns nothing set .Bonus$type$ = i endmethod //! endtextmacro module CIItemBonus requires BonusMod private integer BonusArmor = 0 private integer BonusDamage = 0 private integer BonusSightRange = 0 private integer BonusLifeRegen = 0 private integer BonusStrenght = 0 private integer BonusAgility = 0 private integer BonusIntelligence = 0 private integer BonusAttackSpeed = 0 //! runtextmacro CIItemBonus_BonusMacro("Armor", "amr") //! runtextmacro CIItemBonus_BonusMacro("Damage", "dmg") //! runtextmacro CIItemBonus_BonusMacro("SightRange", "sr") //! runtextmacro CIItemBonus_BonusMacro("LifeRegen", "lr") //! runtextmacro CIItemBonus_BonusMacro("Strenght", "str") //! runtextmacro CIItemBonus_BonusMacro("Intelligence", "int") //! runtextmacro CIItemBonus_BonusMacro("Agility", "agy") //! runtextmacro CIItemBonus_BonusMacro("AttackSpeed", "as") //! runtextmacro CIItemBonus_BonusMacro("ManaRegen", "mr") static if LIBRARY_MovementBonus then private integer BonusManaRegen = 0 //! runtextmacro CIItemBonus_BonusMacro("MoveSpeed") endif public method applyBonus takes unit u returns nothing call AddUnitBonus(u, BONUS_ARMOR, .BonusArmor) call AddUnitBonus(u, BONUS_DAMAGE, .BonusDamage) call AddUnitBonus(u, BONUS_SIGHTRANGE, .BonusSightRange) call AddUnitBonus(u, BONUS_LIFEREGEN, .BonusLifeRegen) call AddUnitBonus(u, BONUS_STRENGHT, .BonusStrenght) call AddUnitBonus(u, BONUS_AGILITY, .BonusAgility) call AddUnitBonus(u, BONUS_INTELLIGENCE, .BonusIntelligence) call AddUnitBonus(u, BONUS_ATTACKSPEED, .BonusAttackSpeed) call AddUnitBonus(u, BONUS_MANAREGEN, .BonusManaRegen) static if LIBRARY_MovementBonus then call AddUnitBonus(u, BONUS_MOVESPEED, .BonusMoveSpeed) endif endmethod public method removeBonus takes unit u returns nothing call AddUnitBonus(u, BONUS_ARMOR, -.BonusArmor) call AddUnitBonus(u, BONUS_DAMAGE, -.BonusDamage) call AddUnitBonus(u, BONUS_SIGHTRANGE, -.BonusSightRange) call AddUnitBonus(u, BONUS_LIFEREGEN, -.BonusLifeRegen) call AddUnitBonus(u, BONUS_STRENGHT, -.BonusStrenght) call AddUnitBonus(u, BONUS_AGILITY, -.BonusAgility) call AddUnitBonus(u, BONUS_INTELLIGENCE, -.BonusIntelligence) call AddUnitBonus(u, BONUS_ATTACKSPEED, -.BonusAttackSpeed) call AddUnitBonus(u, BONUS_MANAREGEN, -.BonusManaRegen) static if LIBRARY_MovementBonus then call AddUnitBonus(u, BONUS_MOVESPEED, -.BonusMoveSpeed) endif endmethod endmodule |
| 12-11-2009, 12:25 PM | #2 |
Did you test it? |
| 12-11-2009, 12:27 PM | #3 |
I can't, can you say me if I made anything obviously wrong? |
