Skip to content

Commit dbc7fd7

Browse files
committed
fix default type and return func guid
1 parent 81b8ed1 commit dbc7fd7

2 files changed

Lines changed: 26 additions & 26 deletions

File tree

CathodeLib/Scripts/CATHODE/CommandsPAK/Components/ParameterData.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -332,8 +332,8 @@ public class cEnum : ParameterData
332332
{
333333
public cEnum()
334334
{
335-
this.enumID = ShortGuidUtils.Generate(((EnumType)0).ToString());
336-
this.enumIndex = 0;
335+
this.enumID = ShortGuid.Invalid;
336+
this.enumIndex = -1;
337337
dataType = DataType.ENUM;
338338
}
339339
public cEnum(ShortGuid enumID, int enumIndex = 0)
@@ -350,7 +350,7 @@ public cEnum(EnumType enumType, int enumIndex = 0)
350350
}
351351

352352
public ShortGuid enumID;
353-
public int enumIndex = 0;
353+
public int enumIndex;
354354

355355
public override string ToString()
356356
{
@@ -362,7 +362,7 @@ public class cEnumString : cString
362362
{
363363
public cEnumString()
364364
{
365-
this.enumID = ShortGuidUtils.Generate(((EnumType)0).ToString());
365+
this.enumID = ShortGuid.Invalid;
366366
dataType = DataType.ENUM_STRING;
367367
}
368368
public cEnumString(ShortGuid enumID, string enumString = "")

CathodeLib/Scripts/CATHODE/CommandsPAK/Helpers/ParameterUtils.cs

Lines changed: 22 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -381,18 +381,18 @@ private static void ApplyDefaultFunction(FunctionEntity functionEntity, Entity e
381381
return parameters;
382382
}
383383

384-
/* Get metadata about a parameter on an entity */
385-
public static (ParameterVariant?, DataType?) GetParameterMetadata(Entity entity, string parameter)
384+
/* Get metadata about a parameter on an entity: variant, type, and function/composite that implements (if applicable) */
385+
public static (ParameterVariant?, DataType?, ShortGuid) GetParameterMetadata(Entity entity, string parameter)
386386
{
387387
return GetParameterMetadata(entity, ShortGuidUtils.Generate(parameter));
388388
}
389-
public static (ParameterVariant?, DataType?) GetParameterMetadata(Entity entity, ShortGuid parameter)
389+
public static (ParameterVariant?, DataType?, ShortGuid) GetParameterMetadata(Entity entity, ShortGuid parameter)
390390
{
391391
switch (entity.variant)
392392
{
393393
case EntityVariant.VARIABLE:
394394
if (parameter == ((VariableEntity)entity).name)
395-
return (ParameterVariant.PARAMETER, ((VariableEntity)entity).type);
395+
return (ParameterVariant.PARAMETER, ((VariableEntity)entity).type, ShortGuid.Invalid);
396396
break;
397397
case EntityVariant.FUNCTION:
398398
FunctionEntity functionEntity = (FunctionEntity)entity;
@@ -403,7 +403,7 @@ public static (ParameterVariant?, DataType?) GetParameterMetadata(Entity entity,
403403
{
404404
var metadata = GetParameterMetadata(functionType.Value, parameter);
405405
if (metadata.Item1 != null)
406-
return metadata;
406+
return (metadata.Item1, metadata.Item2, metadata.Item3 == null ? ShortGuid.Invalid : new ShortGuid((UInt32)metadata.Item3));
407407
functionType = GetInheritedFunction(functionType.Value);
408408
if (functionType == null) break;
409409
}
@@ -412,7 +412,7 @@ public static (ParameterVariant?, DataType?) GetParameterMetadata(Entity entity,
412412
{
413413
var metadata = GetParameterMetadata(FunctionType.CompositeInterface, parameter);
414414
if (metadata.Item1 != null)
415-
return metadata;
415+
return (metadata.Item1, metadata.Item2, metadata.Item3 == null ? ShortGuid.Invalid : new ShortGuid((UInt32)metadata.Item3));
416416
Composite composite = _commands.GetComposite(functionEntity.function);
417417
if (composite != null)
418418
{
@@ -421,10 +421,10 @@ public static (ParameterVariant?, DataType?) GetParameterMetadata(Entity entity,
421421
{
422422
CompositePinInfoTable.PinInfo info = CompositeUtils.GetParameterInfo(composite, var);
423423
if (info == null)
424-
return (ParameterVariant.PARAMETER, var.type);
424+
return (ParameterVariant.PARAMETER, var.type, composite.shortGUID);
425425
else
426426
{
427-
return (CompositeUtils.PinTypeToParameterVariant(info.PinTypeGUID), var.type);
427+
return (CompositeUtils.PinTypeToParameterVariant(info.PinTypeGUID), var.type, composite.shortGUID);
428428
}
429429
}
430430
}
@@ -434,7 +434,7 @@ public static (ParameterVariant?, DataType?) GetParameterMetadata(Entity entity,
434434
{
435435
var metadata = GetParameterMetadata(FunctionType.ProxyInterface, parameter);
436436
if (metadata.Item1 != null)
437-
return metadata;
437+
return (metadata.Item1, metadata.Item2, metadata.Item3 == null ? ShortGuid.Invalid : new ShortGuid((UInt32)metadata.Item3));
438438
ProxyEntity proxyEntity = (ProxyEntity)entity;
439439
Entity proxiedEntity = proxyEntity.proxy.GetPointedEntity(_commands);
440440
if (proxiedEntity != null)
@@ -448,26 +448,26 @@ public static (ParameterVariant?, DataType?) GetParameterMetadata(Entity entity,
448448
return GetParameterMetadata(aliasedEntity, parameter);
449449
break;
450450
}
451-
return (null, null);
451+
return (null, null, ShortGuid.Invalid);
452452
}
453453

454-
/* Get metadata about a parameter on a function */
455-
public static (ParameterVariant?, DataType?) GetParameterMetadata(FunctionType function, string parameter)
454+
/* Get metadata about a parameter on a function: variant, type, and function that implements */
455+
public static (ParameterVariant?, DataType?, FunctionType?) GetParameterMetadata(FunctionType function, string parameter)
456456
{
457457
return GetParameterMetadata(function, ShortGuidUtils.Generate(parameter));
458458
}
459-
public static (ParameterVariant?, DataType?) GetParameterMetadata(FunctionType function, ShortGuid parameter)
459+
public static (ParameterVariant?, DataType?, FunctionType?) GetParameterMetadata(FunctionType function, ShortGuid parameter)
460460
{
461461
Dictionary<ParameterVariant, int> offsets = _functionVariantOffsets[function];
462462
foreach (KeyValuePair<ParameterVariant, int> entry in offsets)
463463
{
464-
(ParameterVariant?, DataType?) data = GetParameterMetadata(function, parameter, entry.Key);
465-
if (data.Item1 != null && data.Item2 != null)
464+
(ParameterVariant?, DataType?, FunctionType?) data = GetParameterMetadata(function, parameter, entry.Key);
465+
if (data.Item1 != null && data.Item2 != null && data.Item3 != null)
466466
return data;
467467
}
468-
return (null, null);
468+
return (null, null, null);
469469
}
470-
public static (ParameterVariant?, DataType?) GetParameterMetadata(FunctionType function, ShortGuid parameter, ParameterVariant variant)
470+
public static (ParameterVariant?, DataType?, FunctionType?) GetParameterMetadata(FunctionType function, ShortGuid parameter, ParameterVariant variant)
471471
{
472472
List<(ShortGuid, ParameterVariant, DataType)> parameters = new List<(ShortGuid, ParameterVariant, DataType)>();
473473
using (BinaryReader reader = new BinaryReader(new MemoryStream(_functionInfo)))
@@ -485,12 +485,12 @@ public static (ParameterVariant?, DataType?) GetParameterMetadata(FunctionType f
485485
case ParameterVariant.METHOD_FUNCTION:
486486
case ParameterVariant.METHOD_PIN:
487487
if (isCorrectParam)
488-
return (variant, DataType.FLOAT);
488+
return (variant, DataType.FLOAT, function);
489489
break;
490490
default:
491491
DataType dataType = (DataType)reader.ReadInt32();
492492
if (isCorrectParam)
493-
return (variant, dataType);
493+
return (variant, dataType, function);
494494
switch (dataType)
495495
{
496496
case DataType.BOOL:
@@ -540,7 +540,7 @@ public static (ParameterVariant?, DataType?) GetParameterMetadata(FunctionType f
540540
}
541541
}
542542
}
543-
return (null, null);
543+
return (null, null, null);
544544
}
545545

546546
/* Create ParameterData with default values for the given entity's parameter */
@@ -747,8 +747,8 @@ public static ParameterData CreateDefaultParameterData(FunctionType function, Sh
747747
reader.BaseStream.Position += 4;
748748
break;
749749
default:
750-
return new cFloat();
751-
//Any other types have no default values.
750+
if (isCorrectParam)
751+
return new cFloat(); //Any other types have no default values.
752752
break;
753753
}
754754
break;

0 commit comments

Comments
 (0)