CREATE TRIGGER IF NOT EXISTS NavalSupply01 AFTER INSERT ON Buildings
WHEN NEW.BuildingClass = "BUILDINGCLASS_LIGHTHOUSE" AND NEW.Type IS NOT NULL
BEGIN
INSERT INTO Building_ResourceQuantity
(BuildingType, ResourceType, Quantity)
SELECT NEW.Type, "RESOURCE_SAILORS", 1;
END;
CREATE TRIGGER IF NOT EXISTS NavalSupply02 AFTER INSERT ON Buildings
WHEN NEW.BuildingClass IN ("BUILDINGCLASS_HARBOR", "BUILDINGCLASS_SEAPORT") AND NEW.Type IS NOT NULL
BEGIN
INSERT INTO Building_ResourceQuantityFromPOP
(BuildingType, ResourceType, Modifier)
SELECT NEW.Type, "RESOURCE_SAILORS", 10;
END;
CREATE TRIGGER IF NOT EXISTS NavalSupply03 AFTER INSERT ON Units
WHEN NEW.CombatClass IN ("UNITCOMBAT_NAVALMELEE", "UNITCOMBAT_NAVALRANGED", "UNITCOMBAT_SUBMARINE", "UNITCOMBAT_CARRIER") AND NEW.Type IS NOT NULL
BEGIN
UPDATE Units SET NoSupply = 1 WHERE Type=NEW.Type;
INSERT INTO Unit_ResourceQuantityRequirements
(UnitType, ResourceType, Cost)
SELECT NEW.Type, "RESOURCE_SAILORS", 1;
END;
CREATE TRIGGER IF NOT EXISTS NavalSupply04 AFTER INSERT ON Units
WHEN NEW.Class = 'UNITCLASS_GREAT_ADMIRAL' AND NEW.Type IS NOT NULL
BEGIN
INSERT INTO Unit_ResourceQuantityExpended
(UnitType, ResourceType, Amount)
SELECT NEW.Type, 'RESOURCE_SAILORS', 2;
END;
CREATE TRIGGER IF NOT EXISTS NavalSupply06 AFTER INSERT ON Unit_FreePromotions
WHEN NEW.PromotionType = 'PROMOTION_SUPPLY_BOOST' AND NEW.UnitType IN (SELECT Type FROM Units WHERE Class = 'UNITCLASS_GREAT_ADMIRAL')
BEGIN
DELETE FROM Unit_FreePromotions WHERE PromotionType = 'PROMOTION_SUPPLY_BOOST' AND UnitType= NEW.UnitType;
END;