Naval Units' stats and properties can be modified as a whole, by using the GameEnums.UnitType_Naval variable.For instance:

CO_TEST.getOffensiveBonus = function (co, attacker, atkPosX, atkPosY,
    defender, defPosX, defPosY, isDefender, action,luckmode, map) {

    if (co.getIsCO0() === true) {
            switch (co.getPowerMode()) {

            case GameEnums.PowerMode_Power:
                if (attacker.getUnitType() === GameEnums.UnitType_Naval) {
                    return 30;
                }
            break; 
       //rest of the code goes here
       }

    }

}


Increases the Offense of Naval Units by 30% during the CO Power.


Modifying stats or properties of specific Units

Each Unit can be modified through a comparison of the UnitID. The Unit ID can be obtained through unit.getUnitID() And it's of a String type.

Possible values are:

Naval Units and their weapon strings
Naval Units Primary Weapon String Secondary Weapon String
GUNBOAT WEAPON_GUNBOAT_NAVAL_GUN N/A
CANNONBOAT WEAPON_ANTI_SHIP_MISSILE N/A
TORPEDOBOAT WEAPON_BOAT_TORPEDO N/A
FRIGATE WEAPON_FRIGATE_NAVAL_GUN N/A
DESTROYER WEAPON_ANTI_SHIP_MISSILE N/A
CRUISER WEAPON_ANTI_SHIP_CRUISER_MISSILE WEAPON_A_AIR_GUN
SUBMARINE WEAPON_TORPEDO N/A
BATTLECRUISER WEAPON_ANTI_SHIP_CANNON WEAPON_BATTLECRUISER_A_AIR_GUN
BATTLESHIP WEAPON_BATTLESHIP_CANNON N/A
AIRCRAFTCARRIER WEAPON_CARRIER_ANTI_AIR_MISSILE N/A
BLACKBOAT N/A N/A
LANDER N/A N/A
WATERMINE N/A N/A
ZCOUNIT_MISSILE_SUB[1] WEAPON_ROCKET_MISSILE N/A


Of these, the ones with the ZCOUNIT_ prefix are Units specific to COs that cannot be deployed by the rest.

Notes

  1. CO Unit of Drake, Greyfield