本文整理汇总了C#中Action.setKeepDistance方法的典型用法代码示例。如果您正苦于以下问题:C# Action.setKeepDistance方法的具体用法?C# Action.setKeepDistance怎么用?C# Action.setKeepDistance使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Action
的用法示例。
在下文中一共展示了Action.setKeepDistance方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: endElement
/*
* (non-Javadoc)
*
* @see es.eucm.eadventure.engine.cargador.subparsers.SubParser#endElement(java.lang.string, java.lang.string,
* java.lang.string)
*/
public override void endElement(string namespaceURI, string sName, string qName)
{
// If no element is being subparsed
if (subParsing == SUBPARSING_NONE)
{
// If it is a resources tag, add it to the object
if (qName.Equals("resources"))
{
if (reading == READING_RESOURCES)
{
currentCustomAction.addResources(currentResources);
reading = READING_NONE;
}
}
// If it is a documentation tag, hold the documentation in the current element
else if (qName.Equals("documentation"))
{
currentDocumentation = currentstring.ToString().Trim();
}
// If it is a examine tag, store the new action in the object
else if (qName.Equals("examine"))
{
Action examineAction = new Action(Action.EXAMINE, currentConditions, currentEffects, currentNotEffects);
examineAction.setDocumentation(currentDocumentation);
examineAction.setKeepDistance(currentKeepDistance);
examineAction.setNeedsGoTo(currentNeedsGoTo);
examineAction.setActivatedNotEffects(activateNotEffects);
examineAction.setActivatedClickEffects(activateClickEffects);
element.addAction(examineAction);
reading = READING_NONE;
}
// If it is a grab tag, store the new action in the object
else if (qName.Equals("grab"))
{
Action grabAction = new Action(Action.GRAB, currentConditions, currentEffects, currentNotEffects);
grabAction.setDocumentation(currentDocumentation);
grabAction.setKeepDistance(currentKeepDistance);
grabAction.setNeedsGoTo(currentNeedsGoTo);
grabAction.setActivatedNotEffects(activateNotEffects);
grabAction.setActivatedClickEffects(activateClickEffects);
element.addAction(grabAction);
reading = READING_NONE;
}
// If it is an use tag, store the new action in the object
else if (qName.Equals("use"))
{
Action useAction = new Action(Action.USE, currentConditions, currentEffects, currentNotEffects);
useAction.setDocumentation(currentDocumentation);
useAction.setNeedsGoTo(currentNeedsGoTo);
useAction.setKeepDistance(currentKeepDistance);
useAction.setActivatedNotEffects(activateNotEffects);
useAction.setActivatedClickEffects(activateClickEffects);
element.addAction(useAction);
reading = READING_NONE;
}
// If it is an use tag, store the new action in the object
else if (qName.Equals("talk-to"))
{
Action talkToAction = new Action(Action.TALK_TO, currentConditions, currentEffects, currentNotEffects);
talkToAction.setDocumentation(currentDocumentation);
talkToAction.setNeedsGoTo(currentNeedsGoTo);
talkToAction.setKeepDistance(currentKeepDistance);
talkToAction.setActivatedNotEffects(activateNotEffects);
talkToAction.setActivatedClickEffects(activateClickEffects);
element.addAction(talkToAction);
reading = READING_NONE;
}
// If it is an use-with tag, store the new action in the object
else if (qName.Equals("use-with"))
{
Action useWithAction = new Action(Action.USE_WITH, currentIdTarget, currentConditions, currentEffects, currentNotEffects, currentClickEffects);
useWithAction.setDocumentation(currentDocumentation);
useWithAction.setKeepDistance(currentKeepDistance);
useWithAction.setNeedsGoTo(currentNeedsGoTo);
useWithAction.setActivatedNotEffects(activateNotEffects);
useWithAction.setActivatedClickEffects(activateClickEffects);
element.addAction(useWithAction);
reading = READING_NONE;
}
// If it is an use-with tag, store the new action in the object
else if (qName.Equals("drag-to"))
{
Action useWithAction = new Action(Action.DRAG_TO, currentIdTarget, currentConditions, currentEffects, currentNotEffects, currentClickEffects);
useWithAction.setDocumentation(currentDocumentation);
useWithAction.setKeepDistance(currentKeepDistance);
useWithAction.setNeedsGoTo(currentNeedsGoTo);
//.........这里部分代码省略.........
示例2: ParseElement
public override void ParseElement(XmlElement element)
{
string tmpArgVal;
XmlElement tmpXmlEl;
if (element.SelectSingleNode ("documentation") != null) {
this.element.setDocumentation (element.SelectSingleNode ("documentation").InnerText);
element.RemoveChild (element.SelectSingleNode ("documentation"));
}
foreach (XmlElement action in element.ChildNodes) {
//First we parse the elements every action haves:
tmpArgVal = action.GetAttribute("needsGoTo");
if (!string.IsNullOrEmpty(tmpArgVal))
{
currentNeedsGoTo = tmpArgVal.Equals("yes");
}
tmpArgVal = action.GetAttribute("keepDistance");
if (!string.IsNullOrEmpty(tmpArgVal))
{
currentKeepDistance = int.Parse(tmpArgVal);
}
tmpArgVal = action.GetAttribute("not-effects");
if (!string.IsNullOrEmpty(tmpArgVal))
{
activateNotEffects = tmpArgVal.Equals("yes");
}
tmpArgVal = action.GetAttribute("click-effects");
if (!string.IsNullOrEmpty(tmpArgVal))
{
activateClickEffects = tmpArgVal.Equals("yes");
}
tmpArgVal = action.GetAttribute("idTarget");
if (!string.IsNullOrEmpty(tmpArgVal))
{
currentIdTarget = tmpArgVal;
}
currentConditions = new Conditions();
currentEffects = new Effects();
currentNotEffects = new Effects();
currentClickEffects = new Effects();
tmpXmlEl = (XmlElement) action.SelectSingleNode ("condition");
if (tmpXmlEl != null)
new ConditionSubParser_ (currentConditions, chapter).ParseElement (tmpXmlEl);
tmpXmlEl = (XmlElement) action.SelectSingleNode ("effect");
if (tmpXmlEl != null)
new EffectSubParser_ (currentEffects, chapter).ParseElement (tmpXmlEl);
tmpXmlEl = (XmlElement) action.SelectSingleNode ("click-effect");
if (tmpXmlEl != null)
new EffectSubParser_ (currentClickEffects, chapter).ParseElement (tmpXmlEl);
tmpXmlEl = (XmlElement) action.SelectSingleNode ("not-effect");
if (tmpXmlEl != null)
new EffectSubParser_ (currentNotEffects, chapter).ParseElement (tmpXmlEl);
//Then we instantiate the correct action by name.
//We also parse the elements that are unique of that action.
Action currentAction = new Action(0);
switch (action.Name) {
case "examines": currentAction = new Action(Action.EXAMINE, currentConditions, currentEffects, currentNotEffects); break;
case "grabs": currentAction = new Action(Action.GRAB, currentConditions, currentEffects, currentNotEffects); break;
case "use": currentAction = new Action(Action.USE, currentConditions, currentEffects, currentNotEffects); break;
case "talk-to": currentAction = new Action(Action.TALK_TO, currentConditions, currentEffects, currentNotEffects); break;
case "use-with": currentAction = new Action(Action.USE_WITH, currentIdTarget, currentConditions, currentEffects, currentNotEffects, currentClickEffects); break;
case "give-to": currentAction = new Action(Action.GIVE_TO, currentIdTarget, currentConditions, currentEffects, currentNotEffects, currentClickEffects); break;
case "drag-to": currentAction = new Action (Action.DRAG_TO, currentIdTarget, currentConditions, currentEffects, currentNotEffects, currentClickEffects); break;
case "custom":
case "custom-interact":
CustomAction customAction = new CustomAction ((action.Name == "custom") ? Action.CUSTOM : Action.CUSTOM_INTERACT);
tmpArgVal = action.GetAttribute ("name");
if (!string.IsNullOrEmpty (tmpArgVal)) {
currentName = tmpArgVal;
}
customAction.setName (currentName);
tmpXmlEl = (XmlElement) action.SelectSingleNode ("resources");
if (tmpXmlEl != null)
customAction.addResources (parseResources (tmpXmlEl));
currentAction = customAction;
break;
}
//Finally we set al the attributes to the action;
currentAction.setConditions(currentConditions);
currentAction.setEffects(currentEffects);
currentAction.setNotEffects(currentNotEffects);
currentAction.setKeepDistance(currentKeepDistance);
currentAction.setNeedsGoTo(currentNeedsGoTo);
currentAction.setActivatedNotEffects(activateNotEffects);
currentAction.setClickEffects(currentClickEffects);
currentAction.setActivatedClickEffects(activateClickEffects);
this.element.addAction(currentAction);
}
//.........这里部分代码省略.........