所以基本上我有一个自定义的SequenceCondition,它有一个VariableLink,它接受一个属性名称,当我运行代码时,我总是得到false(ActivateOutputLink(1)),因为我的属性值总是"none"。正在链接的项目是一个名为OHSQuest的自定义类,我正在kismet中连接任务。这是代码:
// extend UIAction if this action should be UI Kismet Action instead of a Level Kismet Action
class OHSQuestCompare extends SequenceCondition;
var() OHSquest questToCompare;
event Activated()
{
local OHSPlayerController PC;
local int i;
PC=OHSPlayerController(GetWorldInfo().GetALocalPlayerController());
for(i=0;i<PC.quests.Length;++i)
{
if(PC.quests[i].sQuestDescription==questToCompare.sQuestDescription)
ActivateOutputLink(0);
}
ActivateOutputLink(1);
}
defaultproperties
{
ObjName="QuestCompare"
ObjCategory="Quest"
bCallHandler=false;
InputLinks(0)=(LinkDesc="In")
OutputLinks(0)=(LinkDesc="True")
OutputLinks(1)=(LinkDesc="False")
bAutoActivateOutputLinks=false;
VariableLinks.Empty;
VariableLinks(0)=(ExpectedType=class'OHSQuest',bWriteable=true,LinkDesc="Quest To Compare",PropertyName=questToCompare);
}
我还有另一个自定义的 SequenceAction,它为其变量链接采用 OHSQuest,并且工作正常。知道为什么这个没有填写吗?
我认为您的预期类型可能需要"SeqVar_Object"?