Make sure you use the right syntax, depending on whether you are using the reference or the base object:
MyReference.GetCreatureType
Or
GetCreatureType MyBaseObject
if player.getactiveeffectcount >= 1 set SummonedDaedra to player.GetNthActiveEffectSummonRef 1 set CreatureType to SummonedDaedra.getcreaturetype if SummonedDaedra.getcreaturetype == 1 set DaedraSummonedCount to (DaedraSummonedCount +1) message "success!!!" endifendif
PrintC "Summon is %n (%i)", SummonedDaedra, SummonedDaedraline to check that you really get the summon's reference from the call? That would be the first check to do.
ForEach ar <- PlayerRef.GetActiveEffectCodes let type := *ar if (MagicEffectUsesCreatureC type) let type := ar["key"] let rt := PlayerRef.GetNthActiveEffectSummonRef type Break endif Loop
If (X == Y) NPC1.Movetomarker Z NPC2.Movetomarker Z NPC1.Enable NPC2.EnableEndif
If (X == Y) NPC1.Movetomarker Z NPC1.Enable NPC2.Movetomarker Z NPC2.EnableEndif