예제 #1
0
        public void ProgrammedEffectTableReturnsValidData()
        {
            TwoDimArray <ProgrammedEffectTableEntry> table = NwGameTables.ProgrammedEffectTable;

            ProgrammedEffectTableEntry envMapRow = table.GetRow(100);

            Assert.That(envMapRow.RowIndex, Is.EqualTo(100));
            Assert.That(envMapRow.Label, Is.EqualTo("EnvMap00"));
            Assert.That(envMapRow.Type, Is.EqualTo(ProgFxType.EnvironmentMap));
            Assert.That(envMapRow.GetParamString(1), Is.EqualTo("vdu_envmap_000"));
            Assert.That(envMapRow.GetParamString(2), Is.EqualTo(null));
            Assert.That(envMapRow.GetParamString(3), Is.EqualTo(null));
            Assert.That(envMapRow.GetParamString(4), Is.EqualTo(null));
            Assert.That(envMapRow.GetParamString(5), Is.EqualTo(null));
            Assert.That(envMapRow.GetParamString(6), Is.EqualTo(null));
            Assert.That(envMapRow.GetParamString(7), Is.EqualTo(null));
            Assert.That(envMapRow.GetParamString(8), Is.EqualTo(null));

            ProgrammedEffectTableEntry selfIllumRow = table.GetRow(200);

            Assert.That(selfIllumRow.RowIndex, Is.EqualTo(200));
            Assert.That(selfIllumRow.Label, Is.EqualTo("SelfIllumRed"));
            Assert.That(selfIllumRow.Type, Is.EqualTo(ProgFxType.StaticGlow));
            Assert.That(selfIllumRow.GetParamFloat(1), Is.EqualTo(1.0f));
            Assert.That(selfIllumRow.GetParamFloat(2), Is.EqualTo(0.0f));
            Assert.That(selfIllumRow.GetParamFloat(3), Is.EqualTo(0.0f));
            Assert.That(selfIllumRow.GetParamFloat(4), Is.EqualTo(null));
            Assert.That(selfIllumRow.GetParamFloat(5), Is.EqualTo(null));
            Assert.That(selfIllumRow.GetParamFloat(6), Is.EqualTo(null));
            Assert.That(selfIllumRow.GetParamFloat(7), Is.EqualTo(null));
            Assert.That(selfIllumRow.GetParamFloat(8), Is.EqualTo(null));

            ProgrammedEffectTableEntry lightRow = table.GetRow(300);

            Assert.That(lightRow.RowIndex, Is.EqualTo(300));
            Assert.That(lightRow.Label, Is.EqualTo("LightWhite5m"));
            Assert.That(lightRow.Type, Is.EqualTo(ProgFxType.Light));
            Assert.That(lightRow.GetParamString(1), Is.EqualTo("White_5m"));
            Assert.That(lightRow.GetParamFloat(2), Is.EqualTo(1.0f));
            Assert.That(lightRow.GetParamInt(3), Is.EqualTo(0));
            Assert.That(lightRow.GetParamInt(4), Is.EqualTo(20));
            Assert.That(lightRow.GetParamInt(5), Is.EqualTo(0));
            Assert.That(lightRow.GetParamInt(6), Is.EqualTo(0));
            Assert.That(lightRow.GetParamString(7), Is.EqualTo("fx_light_clr"));
            Assert.That(lightRow.GetParamString(8), Is.EqualTo(null));
        }
예제 #2
0
        public void ExpTableReturnsValidData(int rowIndex, int?level, uint?xp)
        {
            TwoDimArray <ExpTableEntry> table = NwGameTables.ExpTable;
            ExpTableEntry row = table.GetRow(rowIndex);

            Assert.That(row.RowIndex, Is.EqualTo(rowIndex));
            Assert.That(row.Level, Is.EqualTo(level));
            Assert.That(row.XP, Is.EqualTo(xp));
        }
예제 #3
0
        public void DamageLevelTableReturnsValidData(int rowIndex, string label, int?strRef)
        {
            TwoDimArray <DamageLevelEntry> table = NwGameTables.DamageLevelTable;
            DamageLevelEntry row = table.GetRow(rowIndex);

            Assert.That(row.RowIndex, Is.EqualTo(rowIndex));
            Assert.That(row.Label, Is.EqualTo(label));
            Assert.That(row.StrRef?.Id, Is.EqualTo(strRef));
        }
예제 #4
0
        public void BodyBagTableReturnsValidData(int rowIndex, string label, uint?nameStrRef, int?appearance)
        {
            TwoDimArray <BodyBagTableEntry> table = NwGameTables.BodyBagTable;
            BodyBagTableEntry row = table.GetRow(rowIndex);

            Assert.That(row.RowIndex, Is.EqualTo(rowIndex));
            Assert.That(row.Label, Is.EqualTo(label));
            Assert.That(row.Name?.Id, Is.EqualTo(nameStrRef));
            Assert.That(row.Appearance?.RowIndex, Is.EqualTo(appearance));
        }
예제 #5
0
        public void PartsTableReturnsValidData(int rowIndex, int?costModifier, float?acBonus, int?armorTableEntry)
        {
            TwoDimArray <PartsTableEntry> table = NwGameTables.PartsChestTable;
            PartsTableEntry row = table.GetRow(rowIndex);

            Assert.That(row.RowIndex, Is.EqualTo(rowIndex));
            Assert.That(row.CostModifier, Is.EqualTo(costModifier));
            Assert.That(row.ACBonus, Is.EqualTo(acBonus));
            Assert.That(row.ArmorTableEntry?.RowIndex, Is.EqualTo(armorTableEntry));
        }
예제 #6
0
        public void SkillItemCostTableReturnsValidData(int rowIndex, int?deviceCostMax, int?skillReqClass, int?skillReqRace, int?skillReqAlign)
        {
            TwoDimArray <SkillItemCostTableEntry> table = NwGameTables.SkillItemCostTable;
            SkillItemCostTableEntry row = table.GetRow(rowIndex);

            Assert.That(row.RowIndex, Is.EqualTo(rowIndex));
            Assert.That(row.DeviceCostMax, Is.EqualTo(deviceCostMax));
            Assert.That(row.ClassSkillRequirement, Is.EqualTo(skillReqClass));
            Assert.That(row.RaceSkillRequirement, Is.EqualTo(skillReqRace));
            Assert.That(row.AlignmentSkillRequirement, Is.EqualTo(skillReqAlign));
        }
예제 #7
0
        public void PlaceableSoundTableReturnsValidData(int rowIndex, string label, string armorType, string opened, string closed, string destroyed, string used, string locked)
        {
            TwoDimArray <PlaceableSoundTableEntry> table = NwGameTables.PlaceableSoundTable;
            PlaceableSoundTableEntry row = table.GetRow(rowIndex);

            Assert.That(row.RowIndex, Is.EqualTo(rowIndex));
            Assert.That(row.Label, Is.EqualTo(label));
            Assert.That(row.ArmorType, Is.EqualTo(armorType));
            Assert.That(row.Opened, Is.EqualTo(opened));
            Assert.That(row.Closed, Is.EqualTo(closed));
            Assert.That(row.Destroyed, Is.EqualTo(destroyed));
            Assert.That(row.Used, Is.EqualTo(used));
            Assert.That(row.Locked, Is.EqualTo(locked));
        }
예제 #8
0
        public void LightColorTableReturnsValidData(int rowIndex, float red, float green, float blue, string label, float toolsetRed, float toolsetGreen, float toolsetBlue)
        {
            TwoDimArray <LightColorTableEntry> table = NwGameTables.LightColorTable;
            LightColorTableEntry row = table.GetRow(rowIndex);

            Assert.That(row.RowIndex, Is.EqualTo(rowIndex));
            Assert.That(row.Red, Is.EqualTo(red));
            Assert.That(row.Green, Is.EqualTo(green));
            Assert.That(row.Blue, Is.EqualTo(blue));
            Assert.That(row.Label, Is.EqualTo(label));
            Assert.That(row.ToolsetRed, Is.EqualTo(toolsetRed));
            Assert.That(row.ToolsetGreen, Is.EqualTo(toolsetGreen));
            Assert.That(row.ToolsetBlue, Is.EqualTo(toolsetBlue));
        }
예제 #9
0
        public void ArmorTableReturnsValidData(int rowIndex, int?acBonus, int?dexBonus, int?acCheck, int?arcaneFailurePct, int?weight, int?cost, int?descriptionStrRef, int?baseItemStatsStrRef)
        {
            TwoDimArray <ArmorTableEntry> table = NwGameTables.ArmorTable;
            ArmorTableEntry row = table.GetRow(rowIndex);

            Assert.That(row.RowIndex, Is.EqualTo(rowIndex));
            Assert.That(row.ACBonus, Is.EqualTo(acBonus));
            Assert.That(row.DexBonus, Is.EqualTo(dexBonus));
            Assert.That(row.ACCheck, Is.EqualTo(acCheck));
            Assert.That(row.ArcaneFailurePct, Is.EqualTo(arcaneFailurePct));
            Assert.That(row.Weight, Is.EqualTo(weight));
            Assert.That(row.Cost, Is.EqualTo(cost));
            Assert.That(row.Description?.Id, Is.EqualTo(descriptionStrRef));
            Assert.That(row.BaseItemStats?.Id, Is.EqualTo(baseItemStatsStrRef));
        }
예제 #10
0
        public void AppearanceTableReturnsValidData(int rowIndex, string label, uint?strRef, string name, string race, string envMap,
                                                    string bloodColor, string modelType, float?weaponScale, float?wingTailScale, float?helmetScaleM, float?helmetScaleF, string moveRate,
                                                    float?walkDist, float?runDist, float?perSpace, float?crePerSpace, float?height, float?hitDist, float?prefAttackDist, string targetHeight,
                                                    bool?abortOnParry, int?racialType, bool?hasLegs, bool?hasArms, string portrait, int?sizeCategory, int?perceptionDist, int?footstepType,
                                                    int?soundAppType, bool?headTrack, int?headArcH, int?headArcV, string headName, int?bodyBag, bool?targetable)
        {
            TwoDimArray <AppearanceTableEntry> table = NwGameTables.AppearanceTable;
            AppearanceTableEntry row = table.GetRow(rowIndex);

            Assert.That(row.RowIndex, Is.EqualTo(rowIndex));
            Assert.That(row.Label, Is.EqualTo(label));
            Assert.That(row.StrRef?.Id, Is.EqualTo(strRef));
            Assert.That(row.Name, Is.EqualTo(name));
            Assert.That(row.Race, Is.EqualTo(race));
            Assert.That(row.EnvironmentMap, Is.EqualTo(envMap));
            Assert.That(row.BloodColor, Is.EqualTo(bloodColor));
            Assert.That(row.ModelType, Is.EqualTo(modelType));
            Assert.That(row.WeaponScale, Is.EqualTo(weaponScale));
            Assert.That(row.WingTailScale, Is.EqualTo(wingTailScale));
            Assert.That(row.HelmetScaleM, Is.EqualTo(helmetScaleM));
            Assert.That(row.HelmetScaleF, Is.EqualTo(helmetScaleF));
            Assert.That(row.MovementRate, Is.EqualTo(moveRate));
            Assert.That(row.WalkDistance, Is.EqualTo(walkDist));
            Assert.That(row.RunDistance, Is.EqualTo(runDist));
            Assert.That(row.PersonalSpace, Is.EqualTo(perSpace));
            Assert.That(row.CreaturePersonalSpace, Is.EqualTo(crePerSpace));
            Assert.That(row.Height, Is.EqualTo(height));
            Assert.That(row.HitDistance, Is.EqualTo(hitDist));
            Assert.That(row.PreferredAttackDistance, Is.EqualTo(prefAttackDist));
            Assert.That(row.TargetHeight, Is.EqualTo(targetHeight));
            Assert.That(row.AbortOnParry, Is.EqualTo(abortOnParry));
            Assert.That(row.RacialType, Is.EqualTo(racialType));
            Assert.That(row.HasLegs, Is.EqualTo(hasLegs));
            Assert.That(row.HasArms, Is.EqualTo(hasArms));
            Assert.That(row.Portrait, Is.EqualTo(portrait));
            Assert.That(row.SizeCategory, Is.EqualTo(sizeCategory));
            Assert.That(row.PerceptionDistance, Is.EqualTo(perceptionDist));
            Assert.That(row.FootstepType, Is.EqualTo(footstepType));
            Assert.That(row.AppearanceSoundSet, Is.EqualTo(soundAppType));
            Assert.That(row.HeadTrack, Is.EqualTo(headTrack));
            Assert.That(row.HeadArcHorizontal, Is.EqualTo(headArcH));
            Assert.That(row.HeadArcVertical, Is.EqualTo(headArcV));
            Assert.That(row.HeadName, Is.EqualTo(headName));
            Assert.That(row.BodyBag?.RowIndex, Is.EqualTo(bodyBag));
            Assert.That(row.Targetable, Is.EqualTo(targetable));
        }
예제 #11
0
        public void EnvironmentTableReturnsValidData(int rowIndex, string label, uint strRef, DayNightMode dayNight, byte lightAmbRed,
                                                     byte lightAmbGreen, byte lightAmbBlue, byte lightDiffRed, byte lightDiffGreen, byte lightDiffBlue, bool lightShadows,
                                                     byte darkAmbRed, byte darkAmbGreen, byte darkAmbBlue, byte darkDiffRed, byte darkDiffGreen, byte darkDiffBlue, bool darkShadows,
                                                     byte lightFogRed, byte lightFogGreen, byte lightFogBlue, byte darkFogRed, byte darkFogGreen, byte darkFogBlue, byte lightFog, byte darkFog,
                                                     int main1Color1, int main1Color2, int main1Color3, int main1Color4, int main2Color1, int main2Color2, int main2Color3, int main2Color4,
                                                     int secondaryColor1, int secondaryColor2, int secondaryColor3, int secondaryColor4, byte wind, byte snow, byte rain, byte lightning, float shadowAlpha)
        {
            TwoDimArray <EnvironmentPreset> table = NwGameTables.EnvironmentPresetTable;
            EnvironmentPreset row = table.GetRow(rowIndex);

            Assert.That(row.RowIndex, Is.EqualTo(rowIndex));
            Assert.That(row.Label, Is.EqualTo(label));
            Assert.That(row.StrRef, Is.EqualTo(new StrRef(strRef)));
            Assert.That(row.DayNightMode, Is.EqualTo(dayNight));
            Assert.That(row.SunAmbientColor, Is.EqualTo(new Color(lightAmbRed, lightAmbGreen, lightAmbBlue)));
            Assert.That(row.SunDiffuseColor, Is.EqualTo(new Color(lightDiffRed, lightDiffGreen, lightDiffBlue)));
            Assert.That(row.SunShadows, Is.EqualTo(lightShadows));
            Assert.That(row.MoonAmbientColor, Is.EqualTo(new Color(darkAmbRed, darkAmbGreen, darkAmbBlue)));
            Assert.That(row.MoonDiffuseColor, Is.EqualTo(new Color(darkDiffRed, darkDiffGreen, darkDiffBlue)));
            Assert.That(row.MoonShadows, Is.EqualTo(darkShadows));
            Assert.That(row.SunFogColor, Is.EqualTo(new Color(lightFogRed, lightFogGreen, lightFogBlue)));
            Assert.That(row.MoonFogColor, Is.EqualTo(new Color(darkFogRed, darkFogGreen, darkFogBlue)));
            Assert.That(row.SunFogAmount, Is.EqualTo(lightFog));
            Assert.That(row.MoonFogAmount, Is.EqualTo(darkFog));
            Assert.That(row.Main1Color1, Is.EqualTo(main1Color1));
            Assert.That(row.Main1Color2, Is.EqualTo(main1Color2));
            Assert.That(row.Main1Color3, Is.EqualTo(main1Color3));
            Assert.That(row.Main1Color4, Is.EqualTo(main1Color4));
            Assert.That(row.Main2Color1, Is.EqualTo(main2Color1));
            Assert.That(row.Main2Color2, Is.EqualTo(main2Color2));
            Assert.That(row.Main2Color3, Is.EqualTo(main2Color3));
            Assert.That(row.Main2Color4, Is.EqualTo(main2Color4));
            Assert.That(row.SecondaryColor1, Is.EqualTo(secondaryColor1));
            Assert.That(row.SecondaryColor2, Is.EqualTo(secondaryColor2));
            Assert.That(row.SecondaryColor3, Is.EqualTo(secondaryColor3));
            Assert.That(row.SecondaryColor4, Is.EqualTo(secondaryColor4));
            Assert.That(row.WindPower, Is.EqualTo(wind));
            Assert.That(row.SnowChance, Is.EqualTo(snow));
            Assert.That(row.RainChance, Is.EqualTo(rain));
            Assert.That(row.LightningChance, Is.EqualTo(lightning));
            Assert.That(row.ShadowAlpha, Is.EqualTo(shadowAlpha));
        }
예제 #12
0
        public void PlaceableTableReturnsValidData(int rowIndex, string label, uint?strRef, string modelName, int?lightColor, float?lightOffsetX, float?lightOffsetY, float?lightOffsetZ, int?soundAppType, ShadowSize?shadowSize, bool?bodyBag, string lowGore, string reflection, bool?staticAllowed)
        {
            TwoDimArray <PlaceableTableEntry> table = NwGameTables.PlaceableTable;
            PlaceableTableEntry row = table.GetRow(rowIndex);

            Assert.That(row.RowIndex, Is.EqualTo(rowIndex));
            Assert.That(row.Label, Is.EqualTo(label));
            Assert.That(row.StrRef?.Id, Is.EqualTo(strRef));
            Assert.That(row.ModelName, Is.EqualTo(modelName));
            Assert.That(row.LightColor?.RowIndex, Is.EqualTo(lightColor));
            Assert.That(row.LightOffset?.X, Is.EqualTo(lightOffsetX));
            Assert.That(row.LightOffset?.Y, Is.EqualTo(lightOffsetY));
            Assert.That(row.LightOffset?.Z, Is.EqualTo(lightOffsetZ));
            Assert.That(row.SoundType?.RowIndex, Is.EqualTo(soundAppType));
            Assert.That(row.ShadowSize, Is.EqualTo(shadowSize));
            Assert.That(row.HasBodyBag, Is.EqualTo(bodyBag));
            Assert.That(row.LowGore, Is.EqualTo(lowGore));
            Assert.That(row.Reflection, Is.EqualTo(reflection));
            Assert.That(row.StaticAllowed, Is.EqualTo(staticAllowed));
        }
예제 #13
0
        public void VisualEffectTableReturnsValidData(int rowIndex, string label, string typeFd, bool orientWithGround, string impHeadConNode,
                                                      string impImpactNode, string impRootSNode, string impRootMNode, string impRootLNode, string impRootHNode, int?progFxImpact,
                                                      string soundImpact, int?progFxDuration, string soundDuration, int?progFxCessation, string soundCessation, string cesHeadConNode,
                                                      string cesImpactNode, string cesRootSNode, string cesRootMNode, string cesRootLNode, string cesRootHNode, int?shakeType,
                                                      float?shakeDelay, float?shakeDuration, string lowViolence, string lowQuality, bool?orientWithObject)
        {
            TwoDimArray <VisualEffectTableEntry> table = NwGameTables.VisualEffectTable;
            VisualEffectTableEntry row = table.GetRow(rowIndex);

            Assert.That(row.RowIndex, Is.EqualTo(rowIndex));
            Assert.That(row.Label, Is.EqualTo(label));
            Assert.That(row.TypeFd, Is.EqualTo(typeFd));
            Assert.That(row.OrientWithGround, Is.EqualTo(orientWithGround));
            Assert.That(row.ImpHeadConNode, Is.EqualTo(impHeadConNode));
            Assert.That(row.ImpImpactNode, Is.EqualTo(impImpactNode));
            Assert.That(row.ImpRootSmallNode, Is.EqualTo(impRootSNode));
            Assert.That(row.ImpRootMediumNode, Is.EqualTo(impRootMNode));
            Assert.That(row.ImpRootLargeNode, Is.EqualTo(impRootLNode));
            Assert.That(row.ImpRootHugeNode, Is.EqualTo(impRootHNode));
            Assert.That(row.ProgFxImpact?.RowIndex, Is.EqualTo(progFxImpact));
            Assert.That(row.SoundImpact, Is.EqualTo(soundImpact));
            Assert.That(row.ProgFxDuration?.RowIndex, Is.EqualTo(progFxDuration));
            Assert.That(row.SoundDuration, Is.EqualTo(soundDuration));
            Assert.That(row.ProgFxCessastion, Is.EqualTo(progFxCessation));
            Assert.That(row.SoundCessastion, Is.EqualTo(soundCessation));
            Assert.That(row.CesHeadConNode, Is.EqualTo(cesHeadConNode));
            Assert.That(row.CesImpactNode, Is.EqualTo(cesImpactNode));
            Assert.That(row.CesRootSmallNode, Is.EqualTo(cesRootSNode));
            Assert.That(row.CesRootMediumNode, Is.EqualTo(cesRootMNode));
            Assert.That(row.CesRootLargeNode, Is.EqualTo(cesRootLNode));
            Assert.That(row.CesRootHugeNode, Is.EqualTo(cesRootHNode));
            Assert.That((int?)row.ShakeType, Is.EqualTo(shakeType));
            Assert.That(row.ShakeDelay, Is.EqualTo(shakeDelay));
            Assert.That(row.ShakeDuration, Is.EqualTo(shakeDuration));
            Assert.That(row.LowViolenceVariant, Is.EqualTo(lowViolence));
            Assert.That(row.LowQualityVariant, Is.EqualTo(lowQuality));
            Assert.That(row.OrientWithObject, Is.EqualTo(orientWithObject));
        }