Alright, so I think I've got it then. Here's the barebones of the script.
Basically, the gist of it is that "guilds" are trade outposts of certain factions (Venice, Genoa, Ancona, Switzerland, Aragon, and the Hafsids), and controlling/unifying a trade route requires ownership of all provinces in the node OR having your trade outposts there, if you are one of those factions. Unifying a node will give access to recruitment of certain units and also give bonuses to the buildings associated with that node (and possibly to the trade posts), regardless of where they are. Thanks again for your help.
Code:
;Trade ReCalc
monitor_event GeneralCaptureSettlement SettlementBuildingExists tradeRoute_Adriatic
set_event_counter tradeReCalc_Adriatic 1
end_monitor
monitor_event GeneralCaptureSettlement SettlementBuildingExists tradeNexus_Adriatic
set_event_counter tradeReCalc_Adriatic 1
end_monitor
;;repeat for all trade nodes
monitor_event GuildUpgraded trade_venice
and SettlementBuildingExists tradeRoute_Adriatic
set_event_counter tradeReCalc_Adriatic 1
end_monitor
monitor_event GuildUpgraded trade_venice
and SettlementBuildingExists tradeNexus_Adriatic
set_event_counter tradeReCalc_Adriatic 1
end_monitor
monitor_event GuildDestroyed trade_venice
and SettlementBuildingExists tradeRoute_Adriatic
set_event_counter tradeReCalc_Adriatic 1
end_monitor
monitor_event GuildDestroyed trade_venice
and SettlementBuildingExists tradeNexus_Adriatic
set_event_counter tradeReCalc_Adriatic 1
end_monitor monitor_event GuildUpgraded trade_venice
and SettlementBuildingExists tradeRoute_Adriatic
set_event_counter tradeReCalc_Adriatic 1
end_monitor
;repeat for all guilds (Venice, Genoa, Ancona, Swiss, Catalans, Hafsids), and all trade nodes
monitor_event EventCounter TrueCondition
if I_EventCounter tradeReCalc_Adriatic > 0
;recalc Adriatic Trade
end_if
;repeat for all trade nodes
end_monitor