private void OnPlayerReady(BoolAttribute attr, bool oldValue, bool newValue) { if (newValue == true) { playersWaiting--; } }
public void AddAttribute(string name, AttributeTypes type, string value) { Attribute attribute = null; switch (type) { case AttributeTypes.String: attribute = new StringAttribute(name); break; case AttributeTypes.Int: attribute = new IntAttribute(name); break; case AttributeTypes.Float: attribute = new FloatAttribute(name); break; case AttributeTypes.Vector2: attribute = new Vector2Attribute(name); break; case AttributeTypes.Vector3: attribute = new Vector3Attribute(name); break; case AttributeTypes.Quaternion: attribute = new QuaternionAttribute(name); break; case AttributeTypes.Matrix: attribute = new MatrixAttribute(name); break; case AttributeTypes.Bool: attribute = new BoolAttribute(name); break; default: throw new System.Exception("AttributeType '" + type + "' does not exist!"); } attribute.Initialize(value); AddAttribute(attribute); }
private void DeadChanged( BoolAttribute sender, bool oldValue, bool newValue ) { ChangeBool("Dead", newValue); }
private void HideChanged( BoolAttribute sender, bool oldValue, bool newValue ) { ChangeBool("Hide", newValue); }
private void InteractableChanged( BoolAttribute sender, bool oldValue, bool newValue ) { ChangeBool("Interactable", newValue); }
private void FueledChanged( BoolAttribute sender, bool oldValue, bool newValue ) { ChangeBool("Fueled", newValue); }
private void FlameFuelChangeHandler(BoolAttribute sender, bool oldValue, bool newValue) { // activate cooldown if (flameThrowerState == FlameThrowerState.Active) { flameThrowerStateChangedAt = at; } flameThrowerState = FlameThrowerState.Cooldown; }
protected override ModelMetadata CreateMetadata(IEnumerable <Attribute> attributes, Type containerType, Func <object> modelAccessor, Type modelType, string propertyName) { ModelMetadata metadata = base.CreateMetadata(attributes, containerType, modelAccessor, modelType, propertyName); PropertyEditableAttribute editable = attributes.OfType <PropertyEditableAttribute>().FirstOrDefault(); if (editable == null) { editable = PropertyEditableAttribute.Default; } metadata.AdditionalValues.Add(EditableWhenCreate_Key, editable.WhenCreate); metadata.AdditionalValues.Add(EditableWhenEdit_Key, editable.WhenEdit); metadata.AdditionalValues.Add(Icon_Prefix, attributes.OfType <IconAttribute>().Select(i => i.File).FirstOrDefault()); metadata.AdditionalValues.Add(RealSort_Key, attributes.OfType <RealSortAttribute>().Select(s => s.Expression).FirstOrDefault()); TypeConverterAttribute typeConverterAttribute = attributes.OfType <TypeConverterAttribute>().FirstOrDefault(); if (typeConverterAttribute != null && typeConverterAttribute.ConverterTypeName != null) { metadata.AdditionalValues.Add(ConverterTypeName_Key, typeConverterAttribute.ConverterTypeName); } foreach (var item in attributes.OfType <KeyValueInfoAttribute>()) { metadata.AdditionalValues.Add(KeyValueInfoAttribute_Prefix + item.Key, item.Value); } DataFormatAttribute dataFormatAttribute = attributes.OfType <DataFormatAttribute>().FirstOrDefault(); if (dataFormatAttribute != null) { metadata.EditFormatString = dataFormatAttribute.EditFormatStringWithBraces; metadata.DisplayFormatString = dataFormatAttribute.DiaplayFormatStringWithBraces; metadata.NullDisplayText = dataFormatAttribute.NullDisplayText; metadata.ConvertEmptyStringToNull = dataFormatAttribute.ConvertEmptyStringToNull; } EnumerationAttribute enumerationAttribute = attributes.OfType <EnumerationAttribute>().FirstOrDefault(); if (enumerationAttribute != null) { metadata.AdditionalValues.Add(EnumerationAttribute_Key, enumerationAttribute); } BoolAttribute boolAttribute = attributes.OfType <BoolAttribute>().FirstOrDefault(); if (boolAttribute != null) { metadata.AdditionalValues.Add(BoolAttribute_Key, boolAttribute); } metadata.AdditionalValues.Add(AllAttribute_Key, attributes); return(metadata); }
/// <summary> /// /// </summary> /// <param name="udfValue"></param> /// <param name="newValue"></param> /// <returns></returns> public static bool SetUdf(UDFValue udfValue, string newValue) { if (udfValue.TypedValueAttribute is StringAttribute) { logger.Trace("SetUdf: StringAttribute"); ((StringAttribute)udfValue.TypedValueAttribute).Value = newValue; } else if (udfValue.TypedValueAttribute is BoolAttribute) { logger.Trace("SetUdf: BoolAttribute"); BoolAttribute boolValue = (BoolAttribute)udfValue.TypedValueAttribute; if (string.IsNullOrEmpty(newValue) == false) { switch (newValue.ToUpperInvariant()) { case "TRUE": case "1": boolValue.Value = true; break; case "FALSE": case "0": boolValue.Value = false; break; default: logger.Error("SetUdf: Invalid boolean value {0} for UDF {1}.", newValue, udfValue.Field.Description); return(false); } } } else if (udfValue.TypedValueAttribute is EntityAttribute) { logger.Trace("SetUdf: EntityAttribute"); EntityAttribute entityValue = (EntityAttribute)udfValue.TypedValueAttribute; if (entityValue.FromString(newValue) == false) { logger.Error("SetUdf: Invalid lookup value {0} for UDF {1}.", newValue, udfValue.Field.Description); return(false); } } else { logger.Error("SetUdf: Unsupported UDF type {0} for UDF {1}.", udfValue.TypedValueAttribute, udfValue.Field.Description); return(false); } return(true); }
public void SetValue_SetsBooleanAttribute() { NewElement element = InitializeEmptyNewElement(); int id = 15; var att = new BoolAttribute() { Id = id }; element.BoolAttributes.Add(att); bool value = true; element.SetValue(id, value); Assert.Equal(value, att.Value); }
public static void labelAttribute(this BoolAttribute _p0) { }
private CarPartAttribute GetPreparedAttribute(CarPartAttributeData attributeData) { var attributeName = HashMapper.ResolveHash(attributeData.NameHash); CarPartAttribute attribute; switch (attributeName) { case "PARTID_UPGRADE_GROUP": attribute = new PartIdAttribute(); break; case "LANGUAGEHASH": attribute = new LanguageHashAttribute(); break; case "KITNUMBER": attribute = new KitNumberAttribute(); break; case "LOD_NAME_PREFIX_SELECTOR": attribute = new LodNamePrefixAttribute(); break; case "LOD_BASE_NAME": attribute = new LodBaseNameAttribute(); break; case "NAME_OFFSET": attribute = new NameOffsetAttribute(); break; case "LOD_CHARACTERS_OFFSET": attribute = new LodCharactersOffsetAttribute(); break; case "LOD_NAME_PREFIX_NAMEHASH": attribute = new LodNamePrefixNameHashAttribute(); break; case "ONLINE": case "STOCK": case "CARBONFIBRE": case "CENTER": case "0x87557E1E": case "0xF9661A07": case "STOCK_MATERIAL": case "USEMARKER1": case "FULLBODY": case "MIRROR": case "ISDECAL": attribute = new BoolAttribute(attributeName); break; case "TEXTURE": attribute = new TextureAttribute(); break; case "0x10C98090": case "MAX_LOD": case "COLOR0ID": case "COLOR1ID": case "COLOR2ID": case "COLOR3ID": case "VINYLLANGUAGEHASH": case "TEXTUREHASH": case "CV": case "SPECIFICCARNAME": case "0x6BA02C05": case "MAT0": case "MAT1": case "MAT2": case "MAT3": case "MAT4": case "MAT5": case "MAT6": case "MAT7": case "0xC9818DFC": case "0xEBB03E66": case "MATNAMEA": case "MATNAMEB": case "0xD68A7BAB": case "RED": case "GREEN": case "BLUE": case "SWATCH": case "GROUPLANGUAGEHASH": case "0x04B39858": case "0x5412A1D9": case "MODEL_TABLE_OFFSET": case "MORPHTARGET_NUM": case "0xCE7D8DB5": case "0x7D29CF3E": case "0x65F58556": case "GLOSS": case "0xB5548ED7": case "0x1B0EA1A9": case "0xEB0101E2": case "0xE80A3B62": case "PAINTGROUP": case "DAMAGELEVEL": attribute = new IntAttribute(attributeName); break; case "BLEND": case "0x9A9B6DDC": attribute = new FloatAttribute(attributeName); break; default: attribute = new IntAttribute(attributeName); Debug.WriteLine("WARNING: Unimplemented attribute {0}; value={1} (0x{1:X8})", attributeName, attributeData.UnsignedParam); break; } attribute.LoadValue(attributeData); if (attribute is StringBasedAttribute sba) { sba.ReadStrings(_stringsDictionary); } return(attribute); }
private Element ConvertXElementToElement(XElement element) { var elementValues = new List <string>(); if (!element.Elements().Any()) { var tElem = _oldRoot.Descendants(element.Name).Where(x => GetParentsAsString(x, -1) == GetParentsAsString(element, -1) && !x.Elements().Any()).Select(e => e.Value); elementValues.AddRange(tElem); } var xElementList = _oldRoot.Descendants(element.Name).GroupBy(el => el.Parent).Select(g => new { g.Key, Count = g.Count() }).Where(x => x.Count > 1); Element returnElement; var elementName = element.Name.LocalName; var elementType = DataType.GetDataTypeFromList(elementValues, _dateFormat, _dateTimeFormat); switch (elementType.type) { case DataType.Type.Date: returnElement = new DateTimeElement(elementName, _dateFormat); break; case DataType.Type.DateTime: returnElement = new DateTimeElement(elementName, _dateTimeFormat); break; case DataType.Type.Bool: returnElement = new BoolElement(elementName, "True", "False"); break; case DataType.Type.@bool: returnElement = new BoolElement(elementName, "true", "false"); break; case DataType.Type.@int: returnElement = new IntElement(elementName); break; case DataType.Type.@decimal: returnElement = new DecimalElement(elementName); break; case DataType.Type.@string: returnElement = new StringElement(elementName); break; default: returnElement = new Element(elementName); break; } returnElement.Enumerable = xElementList.Any(); returnElement.Type = elementType; returnElement.OriginalElement = element; foreach (var xElement in element.Elements()) { returnElement.Elements.Add(ConvertXElementToElement(xElement)); } foreach (var xAttribute in element.Attributes()) { var tElements = _oldRoot.DescendantsAndSelf(element.Name).Where(x => GetParentsAsString(x, -1) == GetParentsAsString(element, -1)).ToList(); var xAttr = xAttribute; var attributeValues = tElements.Select(tElement => tElement.Attribute(xAttr.Name)).Select(attribute => attribute != null ? attribute.Value : "").ToList(); Attribute thisAttribute; var attributeName = xAttribute.Name.LocalName; if (xAttribute.IsNamespaceDeclaration) { returnElement.NamespaceAttributes.Add(xAttribute); continue; } if (attributeName == "schemaLocation") { thisAttribute = new SchemaLocationAttribute(attributeName, xAttribute.Value); returnElement.Attributes.Add(thisAttribute); continue; } var attributeType = DataType.GetDataTypeFromList(attributeValues, _dateFormat, _dateTimeFormat); switch (attributeType.type) { case DataType.Type.Date: thisAttribute = new DateTimeAttribute(attributeName, _dateFormat); break; case DataType.Type.DateTime: thisAttribute = new DateTimeAttribute(attributeName, _dateTimeFormat); break; case DataType.Type.Bool: thisAttribute = new BoolAttribute(attributeName, "True", "False"); break; case DataType.Type.@bool: thisAttribute = new BoolAttribute(attributeName, "true", "false"); break; case DataType.Type.@int: thisAttribute = new IntAttribute(attributeName); break; case DataType.Type.@decimal: thisAttribute = new DecimalAttribute(attributeName); break; case DataType.Type.@string: thisAttribute = new StringAttribute(attributeName); break; default: thisAttribute = new Attribute(attributeName); break; } thisAttribute.Type = attributeType; returnElement.Attributes.Add(thisAttribute); } return(returnElement); }