From bb9e5ce3133ebee440f1903b35199bae6a0e1aba Mon Sep 17 00:00:00 2001 From: Areloch Date: Wed, 5 Jun 2019 01:04:47 -0500 Subject: [PATCH 1/3] WIP of shifting the skylight cubemap to be packed into the cubemap array --- .../source/T3D/lighting/reflectionProbe.cpp | 8 +- .../source/renderInstance/renderProbeMgr.cpp | 128 ++++++++---------- Engine/source/renderInstance/renderProbeMgr.h | 10 +- .../advanced/reflectionProbeArrayP.hlsl | 7 +- 4 files changed, 63 insertions(+), 90 deletions(-) diff --git a/Engine/source/T3D/lighting/reflectionProbe.cpp b/Engine/source/T3D/lighting/reflectionProbe.cpp index 6fccb3d05..671433878 100644 --- a/Engine/source/T3D/lighting/reflectionProbe.cpp +++ b/Engine/source/T3D/lighting/reflectionProbe.cpp @@ -638,8 +638,7 @@ void ReflectionProbe::processBakedCubemap() mProbeInfo->mIsEnabled = true; //Update the probe manager with our new texture! - if (!mProbeInfo->mIsSkylight) - PROBEMGR->updateProbeTexture(mProbeInfo->mProbeIdx); + PROBEMGR->updateProbeTexture(mProbeInfo->mProbeIdx); } } @@ -730,8 +729,7 @@ void ReflectionProbe::processStaticCubemap() mProbeInfo->mIsEnabled = true; //Update the probe manager with our new texture! - if (!mProbeInfo->mIsSkylight) - PROBEMGR->updateProbeTexture(mProbeInfo->mProbeIdx); + PROBEMGR->updateProbeTexture(mProbeInfo->mProbeIdx); } } @@ -739,7 +737,7 @@ bool ReflectionProbe::createClientResources() { if (mProbeInfo == nullptr) { - mProbeInfo = PROBEMGR->registerProbe(mProbeShapeType == ProbeRenderInst::Skylight); + mProbeInfo = PROBEMGR->registerProbe(); if (!mProbeInfo) return false; diff --git a/Engine/source/renderInstance/renderProbeMgr.cpp b/Engine/source/renderInstance/renderProbeMgr.cpp index 878253e93..74603dd81 100644 --- a/Engine/source/renderInstance/renderProbeMgr.cpp +++ b/Engine/source/renderInstance/renderProbeMgr.cpp @@ -314,51 +314,47 @@ void RenderProbeMgr::addElement(RenderInst *inst) }*/ } -ProbeRenderInst* RenderProbeMgr::registerProbe(const bool &isSkylight) +ProbeRenderInst* RenderProbeMgr::registerProbe() { ProbeRenderInst newProbe; - newProbe.mIsSkylight = isSkylight; mRegisteredProbes.push_back(newProbe); newProbe.mProbeIdx = mRegisteredProbes.size(); - if (!newProbe.mIsSkylight) + const U32 cubeIndex = _findNextEmptyCubeSlot(); + if (cubeIndex == INVALID_CUBE_SLOT) { - const U32 cubeIndex = _findNextEmptyCubeSlot(); - if (cubeIndex == INVALID_CUBE_SLOT) - { - Con::warnf("RenderProbeMgr::addProbe: Invalid cubemap slot."); - return nullptr; - } - - //check if we need to resize the cubemap array - if (cubeIndex >= mCubeSlotCount) - { - //alloc temp array handles - GFXCubemapArrayHandle irr = GFXCubemapArrayHandle(GFX->createCubemapArray()); - GFXCubemapArrayHandle prefilter = GFXCubemapArrayHandle(GFX->createCubemapArray()); - - irr->init(mCubeSlotCount + PROBE_ARRAY_SLOT_BUFFER_SIZE, PROBE_IRRAD_SIZE, PROBE_FORMAT); - prefilter->init(mCubeSlotCount + PROBE_ARRAY_SLOT_BUFFER_SIZE, PROBE_PREFILTER_SIZE, PROBE_FORMAT); - - mIrradianceArray->copyTo(irr); - mPrefilterArray->copyTo(prefilter); - - //assign the temp handles to the new ones, this will destroy the old ones as well - mIrradianceArray = irr; - mPrefilterArray = prefilter; - - mCubeSlotCount += PROBE_ARRAY_SLOT_BUFFER_SIZE; - } - - newProbe.mCubemapIndex = cubeIndex; - //mark cubemap slot as taken - mCubeMapSlots[cubeIndex] = true; - mCubeMapCount++; - - Con::warnf("RenderProbeMgr::registerProbe: Registered probe %u to cubeIndex %u", newProbe.mProbeIdx, cubeIndex); + Con::warnf("RenderProbeMgr::addProbe: Invalid cubemap slot."); + return nullptr; } + //check if we need to resize the cubemap array + if (cubeIndex >= mCubeSlotCount) + { + //alloc temp array handles + GFXCubemapArrayHandle irr = GFXCubemapArrayHandle(GFX->createCubemapArray()); + GFXCubemapArrayHandle prefilter = GFXCubemapArrayHandle(GFX->createCubemapArray()); + + irr->init(mCubeSlotCount + PROBE_ARRAY_SLOT_BUFFER_SIZE, PROBE_IRRAD_SIZE, PROBE_FORMAT); + prefilter->init(mCubeSlotCount + PROBE_ARRAY_SLOT_BUFFER_SIZE, PROBE_PREFILTER_SIZE, PROBE_FORMAT); + + mIrradianceArray->copyTo(irr); + mPrefilterArray->copyTo(prefilter); + + //assign the temp handles to the new ones, this will destroy the old ones as well + mIrradianceArray = irr; + mPrefilterArray = prefilter; + + mCubeSlotCount += PROBE_ARRAY_SLOT_BUFFER_SIZE; + } + + newProbe.mCubemapIndex = cubeIndex; + //mark cubemap slot as taken + mCubeMapSlots[cubeIndex] = true; + mCubeMapCount++; + + Con::warnf("RenderProbeMgr::registerProbe: Registered probe %u to cubeIndex %u", newProbe.mProbeIdx, cubeIndex); + mProbesDirty = true; return &mRegisteredProbes.last(); @@ -416,6 +412,7 @@ void RenderProbeMgr::_setupStaticParameters() mMipCount = 0; mHasSkylight = false; + mSkylightCubemapIdx = -1; if (probePositionsData.size() != MAXPROBECOUNT) { @@ -434,19 +431,9 @@ void RenderProbeMgr::_setupStaticParameters() probeBBMaxData.fill(Point4F::Zero); probeConfigData.fill(Point4F::Zero); - cubeMaps.clear(); - irradMaps.clear(); Vector cubemapIdxes; - if (probeCount != 0 && mRegisteredProbes[0].mPrefilterCubemap != nullptr) - { - //Get our mipCount - mMipCount = mRegisteredProbes[0].mPrefilterCubemap.getPointer()->getMipMapLevels(); - } - else - { - mMipCount = 1; - } + mMipCount = 1; for (U32 i = 0; i < probeCount; i++) { @@ -457,11 +444,12 @@ void RenderProbeMgr::_setupStaticParameters() if (!curEntry.mIsEnabled) continue; + U32 mips = mRegisteredProbes[0].mPrefilterCubemap.getPointer()->getMipMapLevels(); + mMipCount = mips != 0 && mips > mMipCount ? mips : 0; + if (curEntry.mProbeShapeType == ProbeRenderInst::ProbeShapeType::Skylight || curEntry.mIsSkylight) { - skylightPos = curEntry.getPosition(); - skylightPrefilterMap = curEntry.mPrefilterCubemap; - skylightIrradMap = curEntry.mIrradianceCubemap; + mSkylightCubemapIdx = curEntry.mCubemapIndex; mHasSkylight = true; continue; } @@ -483,9 +471,6 @@ void RenderProbeMgr::_setupStaticParameters() curEntry.mAtten, curEntry.mCubemapIndex); - cubeMaps.push_back(curEntry.mPrefilterCubemap); - irradMaps.push_back(curEntry.mIrradianceCubemap); - cubemapIdxes.push_back(i); mEffectiveProbeCount++; @@ -499,10 +484,6 @@ void RenderProbeMgr::updateProbeTexture(U32 probeIdx) if (probeIdx >= mRegisteredProbes.size()) return; - //We don't stuff skylights into the array, so we can just skip out on this if it's a skylight - if (mRegisteredProbes[probeIdx].mIsSkylight) - return; - const U32 cubeIndex = mRegisteredProbes[probeIdx].mCubemapIndex; mIrradianceArray->updateTexture(mRegisteredProbes[probeIdx].mIrradianceCubemap, cubeIndex); mPrefilterArray->updateTexture(mRegisteredProbes[probeIdx].mPrefilterCubemap, cubeIndex); @@ -758,7 +739,7 @@ void RenderProbeMgr::render( SceneRenderState *state ) _setupStaticParameters(); // Early out if nothing to draw. - if (!RenderProbeMgr::smRenderReflectionProbes || !state->isDiffusePass() || (!mRegisteredProbes.size() || mEffectiveProbeCount == 0 || mCubeMapCount != 0 ) && !mHasSkylight) + if (!RenderProbeMgr::smRenderReflectionProbes || !state->isDiffusePass() || (mRegisteredProbes.size() == 0 || (mEffectiveProbeCount == 0 && !mHasSkylight))) { getProbeArrayEffect()->setSkip(true); return; @@ -772,7 +753,7 @@ void RenderProbeMgr::render( SceneRenderState *state ) // the vector light material as we use lazy creation. //_setupPerFrameParameters(state); - //Visualization + //Visualization String useDebugAtten = Con::getVariable("$Probes::showAttenuation", "0"); mProbeArrayEffect->setShaderMacro("DEBUGVIZ_ATTENUATION", useDebugAtten); @@ -785,14 +766,17 @@ void RenderProbeMgr::render( SceneRenderState *state ) String useDebugContrib = Con::getVariable("$Probes::showProbeContrib", "0"); mProbeArrayEffect->setShaderMacro("DEBUGVIZ_CONTRIB", useDebugContrib); - //Array rendering - //U32 probeCount = mRegisteredProbes.size(); + if (mHasSkylight || mEffectiveProbeCount != 0) + { + mProbeArrayEffect->setTexture(3, mBRDFTexture); + mProbeArrayEffect->setCubemapArrayTexture(4, mPrefilterArray); + mProbeArrayEffect->setCubemapArrayTexture(5, mIrradianceArray); + } mProbeArrayEffect->setShaderConst("$hasSkylight", (float)mHasSkylight); if (mHasSkylight) { - mProbeArrayEffect->setCubemapTexture(6, skylightPrefilterMap); - mProbeArrayEffect->setCubemapTexture(7, skylightIrradMap); + mProbeArrayEffect->setShaderConst("$skylightCubemapIdx", mSkylightCubemapIdx); } mProbeArrayEffect->setShaderConst("$numProbes", (float)mEffectiveProbeCount); @@ -800,10 +784,6 @@ void RenderProbeMgr::render( SceneRenderState *state ) mProbeArrayEffect->setShaderConst("$cubeMips", (float)mMipCount); if (mEffectiveProbeCount != 0) { - mProbeArrayEffect->setTexture(3, mBRDFTexture); - mProbeArrayEffect->setCubemapArrayTexture(4, mPrefilterArray); - mProbeArrayEffect->setCubemapArrayTexture(5, mIrradianceArray); - if (useDebugContrib == String("1")) { MRandomLCG RandomGen; @@ -829,14 +809,14 @@ void RenderProbeMgr::render( SceneRenderState *state ) mProbeArrayEffect->setShaderConst("$probeContribColors", contribColors); } - } - mProbeArrayEffect->setShaderConst("$inProbePosArray", probePositionsData); - mProbeArrayEffect->setShaderConst("$inRefPosArray", probeRefPositionsData); - mProbeArrayEffect->setShaderConst("$worldToObjArray", probeWorldToObjData); - mProbeArrayEffect->setShaderConst("$bbMinArray", probeBBMinData); - mProbeArrayEffect->setShaderConst("$bbMaxArray", probeBBMaxData); - mProbeArrayEffect->setShaderConst("$probeConfigData", probeConfigData); + mProbeArrayEffect->setShaderConst("$inProbePosArray", probePositionsData); + mProbeArrayEffect->setShaderConst("$inRefPosArray", probeRefPositionsData); + mProbeArrayEffect->setShaderConst("$worldToObjArray", probeWorldToObjData); + mProbeArrayEffect->setShaderConst("$bbMinArray", probeBBMinData); + mProbeArrayEffect->setShaderConst("$bbMaxArray", probeBBMaxData); + mProbeArrayEffect->setShaderConst("$probeConfigData", probeConfigData); + } // Make sure the effect is gonna render. getProbeArrayEffect()->setSkip(false); diff --git a/Engine/source/renderInstance/renderProbeMgr.h b/Engine/source/renderInstance/renderProbeMgr.h index 560410188..8eba74431 100644 --- a/Engine/source/renderInstance/renderProbeMgr.h +++ b/Engine/source/renderInstance/renderProbeMgr.h @@ -199,13 +199,9 @@ class RenderProbeMgr : public RenderBinManager Vector probeBBMinData; Vector probeBBMaxData; Vector probeConfigData; - Vector cubeMaps; - Vector irradMaps; - bool mHasSkylight; - GFXCubemapHandle skylightIrradMap; - GFXCubemapHandle skylightPrefilterMap; - Point4F skylightPos; + bool mHasSkylight; + S32 mSkylightCubemapIdx; AlignedArray mProbePositions; AlignedArray mProbeBBMin; @@ -286,7 +282,7 @@ public: /// Returns the active LM. static inline RenderProbeMgr* getProbeManager(); - ProbeRenderInst* registerProbe(const bool& isSkylight); + ProbeRenderInst* registerProbe(); void unregisterProbe(U32 probeIdx); virtual void setProbeInfo(ProcessedMaterial *pmat, diff --git a/Templates/BaseGame/game/core/rendering/shaders/lighting/advanced/reflectionProbeArrayP.hlsl b/Templates/BaseGame/game/core/rendering/shaders/lighting/advanced/reflectionProbeArrayP.hlsl index ea2ca7641..9ded5bd1b 100644 --- a/Templates/BaseGame/game/core/rendering/shaders/lighting/advanced/reflectionProbeArrayP.hlsl +++ b/Templates/BaseGame/game/core/rendering/shaders/lighting/advanced/reflectionProbeArrayP.hlsl @@ -31,9 +31,8 @@ uniform float4 probeConfigData[MAX_PROBES]; //r,g,b/mode,radius,atten uniform float4 probeContribColors[MAX_PROBES]; #endif -TORQUE_UNIFORM_SAMPLERCUBE(skylightSpecularMap, 6); -TORQUE_UNIFORM_SAMPLERCUBE(skylightIrradMap, 7); uniform float hasSkylight; +uniform float skylightCubemapIdx; float4 main(PFXVertToPix IN) : SV_TARGET { @@ -173,8 +172,8 @@ float4 main(PFXVertToPix IN) : SV_TARGET if (hasSkylight && alpha > 0.001) { - irradiance += TORQUE_TEXCUBELOD(skylightIrradMap, float4(surface.R, 0)).xyz * alpha; - specular += TORQUE_TEXCUBELOD(skylightSpecularMap, float4(surface.R, lod)).xyz * alpha; + irradiance += TORQUE_TEXCUBEARRAYLOD(irradianceCubemapAR, surface.R, skylightCubemapIdx, 0).xyz * alpha; + specular += TORQUE_TEXCUBEARRAYLOD(specularCubemapAR, surface.R, skylightCubemapIdx, lod).xyz * alpha; } #if DEBUGVIZ_SPECCUBEMAP == 1 && DEBUGVIZ_DIFFCUBEMAP == 0 From 226529fd1b79efa34aedde7594f447669998de4d Mon Sep 17 00:00:00 2001 From: Areloch Date: Thu, 13 Jun 2019 00:37:12 -0500 Subject: [PATCH 2/3] Added ability to pass ints to post effect shader consts Reorg'd probe init to flow better and be more robust on load Cleaned up various parts of the probe render manager to be more stable Fixed issue with crash on release due to numProbe in loops being 0 Updated glsl probe array shader Beginning of rework of editor settings Beginning of conversion of asset import config to similar system as editor settings --- .../source/T3D/lighting/reflectionProbe.cpp | 20 +- Engine/source/T3D/lighting/reflectionProbe.h | 3 - Engine/source/gfx/D3D11/gfxD3D11Cubemap.cpp | 4 +- .../materials/processedCustomMaterial.cpp | 2 +- .../materials/processedShaderMaterial.cpp | 2 +- Engine/source/postFx/postEffect.cpp | 39 ++++ Engine/source/postFx/postEffect.h | 12 ++ .../source/renderInstance/renderProbeMgr.cpp | 107 +++++------ Engine/source/renderInstance/renderProbeMgr.h | 2 +- Engine/source/util/settings.cpp | 2 +- .../scripts/advancedLighting_Shaders.cs | 5 - .../advanced/gl/reflectionProbeArrayP.glsl | 46 +++-- .../advanced/gl/reflectionProbeP.glsl | 162 ---------------- .../advanced/gl/reflectionProbeV.glsl | 32 ---- .../advanced/reflectionProbeArrayP.hlsl | 71 +++---- .../game/data/pbr/levels/PbrMatTest.mis | 28 +-- .../probes/127720592_Irradiance.dds | Bin 262276 -> 262276 bytes .../PbrMatTest/probes/127720592_Prefilter.dds | Bin 262276 -> 262276 bytes .../probes/1703285932_Irradiance.dds | Bin 262276 -> 262276 bytes .../probes/1703285932_Prefilter.dds | Bin 262276 -> 262276 bytes .../assetBrowser/scripts/assetBrowser.cs | 2 +- .../tools/assetBrowser/scripts/assetImport.cs | 23 +-- .../BaseGame/game/tools/gui/profiles.ed.cs | 2 +- Templates/BaseGame/game/tools/settings.xml | 173 +++++++++--------- .../BaseGame/game/tools/worldEditor/main.cs | 7 +- Templates/Full/game/Full.torsion.opt | 4 +- 26 files changed, 314 insertions(+), 434 deletions(-) delete mode 100644 Templates/BaseGame/game/core/rendering/shaders/lighting/advanced/gl/reflectionProbeP.glsl delete mode 100644 Templates/BaseGame/game/core/rendering/shaders/lighting/advanced/gl/reflectionProbeV.glsl diff --git a/Engine/source/T3D/lighting/reflectionProbe.cpp b/Engine/source/T3D/lighting/reflectionProbe.cpp index 671433878..8c6f11cfe 100644 --- a/Engine/source/T3D/lighting/reflectionProbe.cpp +++ b/Engine/source/T3D/lighting/reflectionProbe.cpp @@ -89,7 +89,11 @@ ImplementEnumType(ReflectionModeEnum, //----------------------------------------------------------------------------- // Object setup and teardown //----------------------------------------------------------------------------- -ReflectionProbe::ReflectionProbe() +ReflectionProbe::ReflectionProbe() : + cubeDescId(0), + reflectorDesc(nullptr), + mSphereVertCount(0), + mSpherePrimitiveCount(0) { // Flag this object so that it will always // be sent across the network to clients @@ -247,11 +251,11 @@ bool ReflectionProbe::_setReflectionMode(void *object, const char *index, const { ReflectionProbe* probe = reinterpret_cast(object); - if (data == "Static Cubemap") + if (!dStrcmp(data,"Static Cubemap")) { probe->mReflectionModeType = StaticCubemap; } - else if (data == "Baked Cubemap") + else if (!dStrcmp(data, "Baked Cubemap")) { //Clear our cubemap if we changed it to be baked, just for cleanliness probe->mReflectionModeType = BakedCubemap; @@ -589,6 +593,8 @@ void ReflectionProbe::processDynamicCubemap() else mProbeInfo->mIsEnabled = false; + mCubemapDirty = false; + //Update the probe manager with our new texture! //if (!mProbeInfo->mIsSkylight && mProbeInfo->mPrefilterCubemap->isInitialized() && mProbeInfo->mIrradianceCubemap->isInitialized()) // PROBEMGR->updateProbeTexture(mProbeInfo->mProbeIdx); @@ -637,8 +643,10 @@ void ReflectionProbe::processBakedCubemap() { mProbeInfo->mIsEnabled = true; + mCubemapDirty = false; + //Update the probe manager with our new texture! - PROBEMGR->updateProbeTexture(mProbeInfo->mProbeIdx); + PROBEMGR->updateProbeTexture(mProbeInfo); } } @@ -728,8 +736,10 @@ void ReflectionProbe::processStaticCubemap() { mProbeInfo->mIsEnabled = true; + mCubemapDirty = false; + //Update the probe manager with our new texture! - PROBEMGR->updateProbeTexture(mProbeInfo->mProbeIdx); + PROBEMGR->updateProbeTexture(mProbeInfo); } } diff --git a/Engine/source/T3D/lighting/reflectionProbe.h b/Engine/source/T3D/lighting/reflectionProbe.h index 61d0b58db..4c40f5e2b 100644 --- a/Engine/source/T3D/lighting/reflectionProbe.h +++ b/Engine/source/T3D/lighting/reflectionProbe.h @@ -151,9 +151,6 @@ protected: U32 mDynamicLastBakeMS; U32 mRefreshRateMS; - GBitmap* mCubeFaceBitmaps[6]; - U32 mCubemapResolution; - F32 mMaxDrawDistance; bool mResourcesCreated; diff --git a/Engine/source/gfx/D3D11/gfxD3D11Cubemap.cpp b/Engine/source/gfx/D3D11/gfxD3D11Cubemap.cpp index 1451df186..abf26218d 100644 --- a/Engine/source/gfx/D3D11/gfxD3D11Cubemap.cpp +++ b/Engine/source/gfx/D3D11/gfxD3D11Cubemap.cpp @@ -26,7 +26,7 @@ #include "gfx/D3D11/gfxD3D11EnumTranslate.h" #include "gfx/bitmap/imageUtils.h" -GFXD3D11Cubemap::GFXD3D11Cubemap() : mTexture(NULL), mSRView(NULL), mDSView(NULL) +GFXD3D11Cubemap::GFXD3D11Cubemap() : mTexture(NULL), mSRView(NULL), mDSView(NULL), mTexSize(0) { mDynamic = false; mAutoGenMips = false; @@ -568,4 +568,4 @@ void GFXD3D11CubemapArray::zombify() void GFXD3D11CubemapArray::resurrect() { // Static cubemaps are handled by D3D -} \ No newline at end of file +} diff --git a/Engine/source/materials/processedCustomMaterial.cpp b/Engine/source/materials/processedCustomMaterial.cpp index 7c3b04bd6..a6c03cfba 100644 --- a/Engine/source/materials/processedCustomMaterial.cpp +++ b/Engine/source/materials/processedCustomMaterial.cpp @@ -541,4 +541,4 @@ MaterialParameters* ProcessedCustomMaterial::allocMaterialParameters() } } return ret; -} \ No newline at end of file +} diff --git a/Engine/source/materials/processedShaderMaterial.cpp b/Engine/source/materials/processedShaderMaterial.cpp index 5c911be1e..6b2b0632a 100644 --- a/Engine/source/materials/processedShaderMaterial.cpp +++ b/Engine/source/materials/processedShaderMaterial.cpp @@ -1360,7 +1360,7 @@ void ProcessedShaderMaterial::setSceneInfo(SceneRenderState * state, const Scene LIGHTMGR->setLightInfo(this, mMaterial, sgData, state, pass, shaderConsts); - PROBEMGR->setProbeInfo(this, mMaterial, sgData, state, pass, shaderConsts); + //PROBEMGR->setProbeInfo(this, mMaterial, sgData, state, pass, shaderConsts); } void ProcessedShaderMaterial::setBuffers( GFXVertexBufferHandleBase *vertBuffer, GFXPrimitiveBufferHandle *primBuffer ) diff --git a/Engine/source/postFx/postEffect.cpp b/Engine/source/postFx/postEffect.cpp index d75d170a9..2d1285102 100644 --- a/Engine/source/postFx/postEffect.cpp +++ b/Engine/source/postFx/postEffect.cpp @@ -183,6 +183,16 @@ void PostEffect::EffectConst::set(const F32 &newVal) mValueType = FloatType; } +void PostEffect::EffectConst::set(const int& newVal) +{ + if (mIntVal == newVal) + return; + + mIntVal = newVal; + mDirty = true; + mValueType = IntType; +} + void PostEffect::EffectConst::set(const Point4F &newVal) { if (mPointVal == newVal) @@ -326,6 +336,21 @@ void PostEffect::EffectConst::setToBuffer( GFXShaderConstBufferRef buff ) const char* err = avar("PostEffect::EffectConst::setToBuffer $s type is not implemented", mName.c_str()); Con::errorf(err); GFXAssertFatal(0, err); +#endif + } + } + else if (mValueType == IntType) + { + if (type == GFXSCT_Int) + { + buff->set(mHandle, mIntVal); + } + else + { +#if TORQUE_DEBUG + const char* err = avar("PostEffect::EffectConst::setToBuffer $s type is not implemented", mName.c_str()); + Con::errorf(err); + GFXAssertFatal(0, err); #endif } } @@ -1676,6 +1701,20 @@ void PostEffect::setShaderConst(const String &name, const F32 &val) iter->value->set(val); } +void PostEffect::setShaderConst(const String& name, const int& val) +{ + PROFILE_SCOPE(PostEffect_SetShaderConst_Float); + + EffectConstTable::Iterator iter = mEffectConsts.find(name); + if (iter == mEffectConsts.end()) + { + EffectConst* newConst = new EffectConst(name, val); + iter = mEffectConsts.insertUnique(name, newConst); + } + + iter->value->set(val); +} + void PostEffect::setShaderConst(const String &name, const Point4F &val) { PROFILE_SCOPE(PostEffect_SetShaderConst_Point); diff --git a/Engine/source/postFx/postEffect.h b/Engine/source/postFx/postEffect.h index 84ea55c4f..e1ab050e7 100644 --- a/Engine/source/postFx/postEffect.h +++ b/Engine/source/postFx/postEffect.h @@ -230,6 +230,14 @@ protected: set(val); } + EffectConst(const String& name, const int& val) + : mName(name), + mHandle(NULL), + mDirty(true) + { + set(val); + } + EffectConst(const String &name, const Point4F &val) : mName(name), mHandle(NULL), @@ -264,6 +272,7 @@ protected: void set( const String &newVal ); void set(const F32 &newVal); + void set(const int& newVal); void set(const Point4F &newVal); void set(const MatrixF &newVal); void set(const Vector &newVal); @@ -277,6 +286,7 @@ protected: String mStringVal; + S32 mIntVal; F32 mFloatVal; Point4F mPointVal; MatrixF mMatrixVal; @@ -287,6 +297,7 @@ protected: enum { StringType, + IntType, FloatType, PointType, MatrixType, @@ -427,6 +438,7 @@ public: /// void setShaderConst( const String &name, const String &val ); void setShaderConst(const String &name, const F32 &val); + void setShaderConst(const String& name, const int& val); void setShaderConst(const String &name, const Point4F &val); void setShaderConst(const String &name, const MatrixF &val); void setShaderConst(const String &name, const Vector &val); diff --git a/Engine/source/renderInstance/renderProbeMgr.cpp b/Engine/source/renderInstance/renderProbeMgr.cpp index 74603dd81..0b7186f1b 100644 --- a/Engine/source/renderInstance/renderProbeMgr.cpp +++ b/Engine/source/renderInstance/renderProbeMgr.cpp @@ -87,7 +87,8 @@ ProbeRenderInst::ProbeRenderInst() : mAtten(0.0), mCubemapIndex(0), mIsSkylight(false), - mProbeIdx(0) + mProbeIdx(0), + mProbeShapeType(Box) { } @@ -132,7 +133,8 @@ ProbeShaderConstants::ProbeShaderConstants() mBRDFTextureMap(NULL), mSkylightSpecularMap(NULL), mSkylightIrradMap(NULL), - mHasSkylight(NULL) + mHasSkylight(NULL), + mWorldToObjArraySC(NULL) { } @@ -202,7 +204,10 @@ RenderProbeMgr::RenderProbeMgr() mLastShader(nullptr), mLastConstants(nullptr), mProbesDirty(false), - mHasSkylight(false) + mHasSkylight(false), + mSkylightCubemapIdx(-1), + mCubeMapCount(0), + mDefaultSkyLight(nullptr) { mEffectiveProbeCount = 0; mMipCount = 0; @@ -376,7 +381,7 @@ void RenderProbeMgr::unregisterProbe(U32 probeIdx) mRegisteredProbes.erase(probeIdx); //rebuild our probe data - _setupStaticParameters(); + mProbesDirty = true; } // @@ -409,7 +414,7 @@ void RenderProbeMgr::_setupStaticParameters() U32 probeCount = mRegisteredProbes.size(); mEffectiveProbeCount = 0; - mMipCount = 0; + mMipCount = 1; mHasSkylight = false; mSkylightCubemapIdx = -1; @@ -429,11 +434,7 @@ void RenderProbeMgr::_setupStaticParameters() probeWorldToObjData.fill(MatrixF::Identity); probeBBMinData.fill(Point4F::Zero); probeBBMaxData.fill(Point4F::Zero); - probeConfigData.fill(Point4F::Zero); - - Vector cubemapIdxes; - - mMipCount = 1; + probeConfigData.fill(Point4F(-1,0,0,0)); for (U32 i = 0; i < probeCount; i++) { @@ -444,13 +445,12 @@ void RenderProbeMgr::_setupStaticParameters() if (!curEntry.mIsEnabled) continue; - U32 mips = mRegisteredProbes[0].mPrefilterCubemap.getPointer()->getMipMapLevels(); - mMipCount = mips != 0 && mips > mMipCount ? mips : 0; + U32 mips = mRegisteredProbes[i].mPrefilterCubemap.getPointer()->getMipMapLevels(); + mMipCount = mips != 0 && mips >= mMipCount ? mips : 0; - if (curEntry.mProbeShapeType == ProbeRenderInst::ProbeShapeType::Skylight || curEntry.mIsSkylight) + if (curEntry.mIsSkylight) { mSkylightCubemapIdx = curEntry.mCubemapIndex; - mHasSkylight = true; continue; } @@ -471,25 +471,32 @@ void RenderProbeMgr::_setupStaticParameters() curEntry.mAtten, curEntry.mCubemapIndex); - cubemapIdxes.push_back(i); - mEffectiveProbeCount++; } mProbesDirty = false; } -void RenderProbeMgr::updateProbeTexture(U32 probeIdx) +void RenderProbeMgr::updateProbeTexture(ProbeRenderInst* probeInfo) { - if (probeIdx >= mRegisteredProbes.size()) + if (probeInfo->mIrradianceCubemap.isNull() || !probeInfo->mIrradianceCubemap->isInitialized()) + { + Con::errorf("RenderProbeMgr::updateProbeTexture() - tried to update a probe's texture with an invalid or uninitialized irradiance map!"); return; + } - const U32 cubeIndex = mRegisteredProbes[probeIdx].mCubemapIndex; - mIrradianceArray->updateTexture(mRegisteredProbes[probeIdx].mIrradianceCubemap, cubeIndex); - mPrefilterArray->updateTexture(mRegisteredProbes[probeIdx].mPrefilterCubemap, cubeIndex); + if (probeInfo->mPrefilterCubemap.isNull() || !probeInfo->mPrefilterCubemap->isInitialized()) + { + Con::errorf("RenderProbeMgr::updateProbeTexture() - tried to update a probe's texture with an invalid or uninitialized specular map!"); + return; + } - Con::warnf("UpdatedProbeTexture - probeIdx: %u on cubeIndex %u, Irrad validity: %d, Prefilter validity: %d", probeIdx, cubeIndex, - mRegisteredProbes[probeIdx].mIrradianceCubemap->isInitialized(), mRegisteredProbes[probeIdx].mPrefilterCubemap->isInitialized()); + const U32 cubeIndex = probeInfo->mCubemapIndex; + mIrradianceArray->updateTexture(probeInfo->mIrradianceCubemap, cubeIndex); + mPrefilterArray->updateTexture(probeInfo->mPrefilterCubemap, cubeIndex); + + Con::warnf("UpdatedProbeTexture - probeIdx: %u on cubeIndex %u, Irrad validity: %d, Prefilter validity: %d", probeInfo->mProbeIdx, cubeIndex, + probeInfo->mIrradianceCubemap->isInitialized(), probeInfo->mPrefilterCubemap->isInitialized()); } void RenderProbeMgr::_setupPerFrameParameters(const SceneRenderState *state) @@ -669,7 +676,7 @@ void RenderProbeMgr::_update4ProbeConsts(const SceneData &sgData, if (curEntry.mIsSkylight) { - if (curEntry.mPrefilterCubemap.isValid() && curEntry.mPrefilterCubemap.isValid()) + if (curEntry.mPrefilterCubemap->isInitialized() && curEntry.mIrradianceCubemap->isInitialized()) { GFX->setCubeTexture(probeShaderConsts->mSkylightSpecularMap->getSamplerRegister(), curEntry.mPrefilterCubemap); GFX->setCubeTexture(probeShaderConsts->mSkylightIrradMap->getSamplerRegister(), curEntry.mIrradianceCubemap); @@ -739,7 +746,7 @@ void RenderProbeMgr::render( SceneRenderState *state ) _setupStaticParameters(); // Early out if nothing to draw. - if (!RenderProbeMgr::smRenderReflectionProbes || !state->isDiffusePass() || (mRegisteredProbes.size() == 0 || (mEffectiveProbeCount == 0 && !mHasSkylight))) + if (!RenderProbeMgr::smRenderReflectionProbes || !state->isDiffusePass() || (mEffectiveProbeCount == 0 && mSkylightCubemapIdx == -1)) { getProbeArrayEffect()->setSkip(true); return; @@ -765,23 +772,24 @@ void RenderProbeMgr::render( SceneRenderState *state ) String useDebugContrib = Con::getVariable("$Probes::showProbeContrib", "0"); mProbeArrayEffect->setShaderMacro("DEBUGVIZ_CONTRIB", useDebugContrib); + + if(mHasSkylight && mEffectiveProbeCount == 0) + mProbeArrayEffect->setShaderMacro("SKYLIGHT_ONLY", "1"); - if (mHasSkylight || mEffectiveProbeCount != 0) - { - mProbeArrayEffect->setTexture(3, mBRDFTexture); - mProbeArrayEffect->setCubemapArrayTexture(4, mPrefilterArray); - mProbeArrayEffect->setCubemapArrayTexture(5, mIrradianceArray); - } + mProbeArrayEffect->setTexture(3, mBRDFTexture); + mProbeArrayEffect->setCubemapArrayTexture(4, mPrefilterArray); + mProbeArrayEffect->setCubemapArrayTexture(5, mIrradianceArray); - mProbeArrayEffect->setShaderConst("$hasSkylight", (float)mHasSkylight); - if (mHasSkylight) - { - mProbeArrayEffect->setShaderConst("$skylightCubemapIdx", mSkylightCubemapIdx); - } - - mProbeArrayEffect->setShaderConst("$numProbes", (float)mEffectiveProbeCount); + mProbeArrayEffect->setShaderConst("$numProbes", (S32)mEffectiveProbeCount); + mProbeArrayEffect->setShaderConst("$skylightCubemapIdx", mSkylightCubemapIdx); mProbeArrayEffect->setShaderConst("$cubeMips", (float)mMipCount); + + //also set up some colors + Vector contribColors; + + contribColors.setSize(MAXPROBECOUNT); + if (mEffectiveProbeCount != 0) { if (useDebugContrib == String("1")) @@ -789,11 +797,6 @@ void RenderProbeMgr::render( SceneRenderState *state ) MRandomLCG RandomGen; RandomGen.setSeed(mEffectiveProbeCount); - //also set up some colors - Vector contribColors; - - contribColors.setSize(MAXPROBECOUNT); - for (U32 i = 0; i < mEffectiveProbeCount; i++) { //we're going to cheat here a little for consistent debugging behavior. The first 3 probes will always have R G and then B for their colors, every other will be random @@ -806,18 +809,18 @@ void RenderProbeMgr::render( SceneRenderState *state ) else contribColors[i] = Point4F(RandomGen.randF(0, 1), RandomGen.randF(0, 1), RandomGen.randF(0, 1), 1); } - - mProbeArrayEffect->setShaderConst("$probeContribColors", contribColors); } - - mProbeArrayEffect->setShaderConst("$inProbePosArray", probePositionsData); - mProbeArrayEffect->setShaderConst("$inRefPosArray", probeRefPositionsData); - mProbeArrayEffect->setShaderConst("$worldToObjArray", probeWorldToObjData); - mProbeArrayEffect->setShaderConst("$bbMinArray", probeBBMinData); - mProbeArrayEffect->setShaderConst("$bbMaxArray", probeBBMaxData); - mProbeArrayEffect->setShaderConst("$probeConfigData", probeConfigData); } + mProbeArrayEffect->setShaderConst("$probeContribColors", contribColors); + + mProbeArrayEffect->setShaderConst("$inProbePosArray", probePositionsData); + mProbeArrayEffect->setShaderConst("$inRefPosArray", probeRefPositionsData); + mProbeArrayEffect->setShaderConst("$worldToObjArray", probeWorldToObjData); + mProbeArrayEffect->setShaderConst("$bbMinArray", probeBBMinData); + mProbeArrayEffect->setShaderConst("$bbMaxArray", probeBBMaxData); + mProbeArrayEffect->setShaderConst("$probeConfigData", probeConfigData); + // Make sure the effect is gonna render. getProbeArrayEffect()->setSkip(false); diff --git a/Engine/source/renderInstance/renderProbeMgr.h b/Engine/source/renderInstance/renderProbeMgr.h index 8eba74431..911e05a21 100644 --- a/Engine/source/renderInstance/renderProbeMgr.h +++ b/Engine/source/renderInstance/renderProbeMgr.h @@ -292,7 +292,7 @@ public: U32 pass, GFXShaderConstBuffer *shaderConsts); - void updateProbeTexture(U32 probeIdx); + void updateProbeTexture(ProbeRenderInst* probeInfo); /// Debug rendering static bool smRenderReflectionProbes; diff --git a/Engine/source/util/settings.cpp b/Engine/source/util/settings.cpp index 96fd2d5c8..299898e8d 100644 --- a/Engine/source/util/settings.cpp +++ b/Engine/source/util/settings.cpp @@ -709,4 +709,4 @@ DefineEngineMethod(Settings, clearGroups, void, (), , "settingObj.clearGroups(); DefineEngineMethod(Settings, getCurrentGroups, const char*, (), , "settingObj.getCurrentGroups();") { return object->getCurrentGroups(); -} \ No newline at end of file +} diff --git a/Templates/BaseGame/game/core/lighting/scripts/advancedLighting_Shaders.cs b/Templates/BaseGame/game/core/lighting/scripts/advancedLighting_Shaders.cs index 3a52199b4..bc70856ad 100644 --- a/Templates/BaseGame/game/core/lighting/scripts/advancedLighting_Shaders.cs +++ b/Templates/BaseGame/game/core/lighting/scripts/advancedLighting_Shaders.cs @@ -322,8 +322,6 @@ singleton ShaderData( PFX_ReflectionProbeArray ) samplerNames[3] = "$BRDFTexture"; samplerNames[4] = "$specularCubemapAR"; samplerNames[5] = "$irradianceCubemapAR"; - samplerNames[6] = "$skylightSpecularMap"; - samplerNames[7] = "$skylightIrradMap"; pixVersion = 2.0; }; @@ -345,7 +343,6 @@ singleton GFXStateBlockData( PFX_ReflectionProbeArrayStateBlock ) zEnable = false; zWriteEnable = false; - samplersDefined = true; samplerStates[0] = SamplerClampPoint; samplerStates[1] = SamplerClampPoint; @@ -353,6 +350,4 @@ singleton GFXStateBlockData( PFX_ReflectionProbeArrayStateBlock ) samplerStates[3] = SamplerClampPoint; samplerStates[4] = SamplerClampLinear; samplerStates[5] = SamplerClampLinear; - samplerStates[6] = SamplerClampLinear; - samplerStates[7] = SamplerClampLinear; }; \ No newline at end of file diff --git a/Templates/BaseGame/game/core/rendering/shaders/lighting/advanced/gl/reflectionProbeArrayP.glsl b/Templates/BaseGame/game/core/rendering/shaders/lighting/advanced/gl/reflectionProbeArrayP.glsl index 2298c958c..12d8b3c36 100644 --- a/Templates/BaseGame/game/core/rendering/shaders/lighting/advanced/gl/reflectionProbeArrayP.glsl +++ b/Templates/BaseGame/game/core/rendering/shaders/lighting/advanced/gl/reflectionProbeArrayP.glsl @@ -19,7 +19,8 @@ uniform vec3 eyePosWorld; //cubemap arrays require all the same size. so shared mips# value uniform float cubeMips; -uniform float numProbes; +uniform int numProbes; + uniform samplerCubeArray specularCubemapAR; uniform samplerCubeArray irradianceCubemapAR; @@ -34,9 +35,7 @@ uniform vec4 probeConfigData[MAX_PROBES]; //r,g,b/mode,radius,atten uniform vec4 probeContribColors[MAX_PROBES]; #endif -uniform samplerCube skylightSpecularMap; -uniform samplerCube skylightIrradMap; -uniform float hasSkylight; +uniform float skylightCubemapIdx; out vec4 OUT_col; @@ -56,6 +55,7 @@ void main() float alpha = 1; +#if SKYLIGHT_ONLY == 0 int i = 0; float blendFactor[MAX_PROBES]; float blendSum = 0; @@ -64,8 +64,9 @@ void main() float probehits = 0; //Set up our struct data float contribution[MAX_PROBES]; - if (alpha > 0) - { + + //if (alpha > 0) + //{ //Process prooooobes for (i = 0; i < numProbes; ++i) { @@ -83,6 +84,8 @@ void main() if (contribution[i]>0.0) probehits++; } + else + continue; contribution[i] = max(contribution[i],0); @@ -106,20 +109,21 @@ void main() } // Normalize blendVal -#if DEBUGVIZ_ATTENUATION == 0 //this can likely be removed when we fix the above normalization behavior - if (blendFacSum == 0.0f) // Possible with custom weight - { - blendFacSum = 1.0f; - } -#endif + if (blendFacSum == 0.0f) // Possible with custom weight + { + blendFacSum = 1.0f; + } float invBlendSumWeighted = 1.0f / blendFacSum; for (i = 0; i < numProbes; ++i) { blendFactor[i] *= invBlendSumWeighted; contribution[i] *= blendFactor[i]; + alpha -= contribution[i]; } } + else + alpha -= blendSum; #if DEBUGVIZ_ATTENUATION == 1 float contribAlpha = 1; @@ -142,12 +146,14 @@ void main() } //Skylight coloration for anything not covered by probes above - finalContribColor += vec3(0.3, 0.3, 0.3) * contribAlpha; + if(skylightCubemapIdx != -1) + finalContribColor += vec3(0.3, 0.3, 0.3) * contribAlpha; OUT_col = vec4(finalContribColor, 1); return; #endif - } + //} +#endif vec3 irradiance = vec3(0, 0, 0); vec3 specular = vec3(0, 0, 0); @@ -159,27 +165,27 @@ void main() float lod = 0; #endif +#if SKYLIGHT_ONLY == 0 alpha = 1; for (i = 0; i < numProbes; ++i) { float contrib = contribution[i]; if (contrib != 0) { - float cubemapIdx = probeConfigData[i].a; + int cubemapIdx = probeConfigData[i].a; vec3 dir = boxProject(surface.P, surface.R, worldToObjArray[i], bbMinArray[i].xyz, bbMaxArray[i].xyz, inRefPosArray[i].xyz); irradiance += textureLod(irradianceCubemapAR, vec4(dir, cubemapIdx), 0).xyz * contrib; specular += textureLod(specularCubemapAR, vec4(dir, cubemapIdx), lod).xyz * contrib; - //irradiance += vec3(1,1,1) * contrib; - //specular += vec3(1,1,1) * contrib; alpha -= contrib; } } +#endif - if (hasSkylight == 1 && alpha > 0.001) + if (skylightCubemapIdx != -1 && alpha > 0.001) { - irradiance += textureLod(skylightIrradMap, surface.R, 0).xyz * alpha; - specular += textureLod(skylightSpecularMap, surface.R, lod).xyz * alpha; + irradiance += textureLod(irradianceCubemapAR, vec4(surface.R, skylightCubemapIdx), 0).xyz * alpha; + specular += textureLod(specularCubemapAR, vec4(surface.R, skylightCubemapIdx), lod).xyz * alpha; } #if DEBUGVIZ_SPECCUBEMAP == 1 && DEBUGVIZ_DIFFCUBEMAP == 0 diff --git a/Templates/BaseGame/game/core/rendering/shaders/lighting/advanced/gl/reflectionProbeP.glsl b/Templates/BaseGame/game/core/rendering/shaders/lighting/advanced/gl/reflectionProbeP.glsl deleted file mode 100644 index fee0b8783..000000000 --- a/Templates/BaseGame/game/core/rendering/shaders/lighting/advanced/gl/reflectionProbeP.glsl +++ /dev/null @@ -1,162 +0,0 @@ -//----------------------------------------------------------------------------- -// Copyright (c) 2012 GarageGames, LLC -// -// Permission is hereby granted, free of charge, to any person obtaining a copy -// of this software and associated documentation files (the "Software"), to -// deal in the Software without restriction, including without limitation the -// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -// sell copies of the Software, and to permit persons to whom the Software is -// furnished to do so, subject to the following conditions: -// -// The above copyright notice and this permission notice shall be included in -// all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS -// IN THE SOFTWARE. -//----------------------------------------------------------------------------- -#include "../../../gl/hlslCompat.glsl" -#include "shadergen:/autogenConditioners.h" -#include "farFrustumQuad.glsl" -#include "../../../gl/torque.glsl" -#include "../../../gl/lighting.glsl" -#line 27 - -in vec4 pos; -in vec4 wsEyeDir; -in vec4 ssPos; -in vec4 vsEyeDir; - -uniform sampler2D deferredBuffer; -uniform sampler2D colorBuffer; -uniform sampler2D matInfoBuffer; -uniform samplerCube cubeMap; -uniform samplerCube irradianceCubemap; -uniform sampler2D BRDFTexture; -uniform float cubeMips; - -uniform vec4 rtParams0; - -uniform vec3 probeWSPos; -uniform vec3 probeLSPos; -uniform vec4 vsFarPlane; - -uniform float radius; -uniform vec2 attenuation; - -uniform mat4 worldToObj; -uniform mat4 cameraToWorld; - -uniform vec3 eyePosWorld; -uniform vec3 bbMin; -uniform vec3 bbMax; - -uniform float useSphereMode; - -// Box Projected IBL Lighting -// Based on: http://www.gamedev.net/topic/568829-box-projected-cubemap-environment-mapping/ -// and https://seblagarde.wordpress.com/2012/09/29/image-based-lighting-approaches-and-parallax-corrected-cubemap/ -vec3 boxProject(vec3 wsPosition, vec3 reflectDir, vec3 boxWSPos, vec3 boxMin, vec3 boxMax) -{ - vec3 nrdir = reflectDir; - vec3 offset = wsPosition; - vec3 plane1vec = (boxMax - offset) / nrdir; - vec3 plane2vec = (boxMin - offset) / nrdir; - - vec3 furthestPlane = max(plane1vec, plane2vec); - float dist = min(min(furthestPlane.x, furthestPlane.y), furthestPlane.z); - vec3 posonbox = offset + nrdir * dist; - - return posonbox - boxWSPos; -} - -vec3 iblBoxSpecular(vec3 normal, vec3 wsPos, float roughness, vec3 surfToEye, - sampler2D brdfTexture, - samplerCube radianceCube, - vec3 boxPos, - vec3 boxMin, - vec3 boxMax) -{ - float ndotv = clamp(dot(normal, surfToEye), 0.0, 1.0); - - // BRDF - vec2 brdf = textureLod(brdfTexture, vec2(roughness, ndotv),0).xy; - - // Radiance (Specular) - float maxmip = pow(cubeMips+1,2); - float lod = roughness*maxmip; - vec3 r = reflect(surfToEye, normal); - vec3 cubeR = normalize(r); - cubeR = boxProject(wsPos, cubeR, boxPos, boxMin, boxMax); - - vec3 radiance = textureLod(radianceCube, cubeR, lod).xyz * (brdf.x + brdf.y); - - return radiance; -} - -float defineBoxSpaceInfluence(vec3 surfPosWS, vec3 probePos, float radius, float atten) -{ - vec3 surfPosLS = tMul( worldToObj, vec4(surfPosWS,1.0)).xyz; - - vec3 boxMinLS = probePos-(vec3(1,1,1)*radius); - vec3 boxMaxLS = probePos+(vec3(1,1,1)*radius); - - float boxOuterRange = length(boxMaxLS - boxMinLS); - float boxInnerRange = boxOuterRange / atten; - - vec3 localDir = vec3(abs(surfPosLS.x), abs(surfPosLS.y), abs(surfPosLS.z)); - localDir = (localDir - boxInnerRange) / (boxOuterRange - boxInnerRange); - - return max(localDir.x, max(localDir.y, localDir.z)) * -1; -} -out vec4 OUT_col; - -void main() -{ - - // Compute scene UV - vec2 uvScene = getUVFromSSPos( ssPos.xyz/ssPos.w, rtParams0 ); - - //eye ray WS/LS - vec3 vsEyeRay = getDistanceVectorToPlane( -vsFarPlane.w, vsEyeDir.xyz, vsFarPlane ); - vec3 wsEyeRay = tMul(cameraToWorld, vec4(vsEyeRay, 0)).xyz; - - //unpack normal and linear depth - vec4 normDepth = deferredUncondition(deferredBuffer, uvScene); - - //create surface - Surface surface = createSurface( normDepth, colorBuffer, matInfoBuffer, - uvScene, eyePosWorld, wsEyeRay, cameraToWorld); - float blendVal = 1.0; - if(useSphereMode>0) - { - vec3 L = probeWSPos - surface.P; - blendVal = 1.0-length(L)/radius; - clip(blendVal); - } - else - { - float tempAttenVal = 3.5; - blendVal = defineBoxSpaceInfluence(surface.P, probeWSPos, radius, tempAttenVal); - clip(blendVal); - float compression = 0.05; - blendVal=(1.0-compression)+blendVal*compression; - } - //render into the bound space defined above - vec3 surfToEye = normalize(surface.P - eyePosWorld); - vec3 irradiance = textureLod(irradianceCubemap, surface.N,0).xyz; - vec3 specular = iblBoxSpecular(surface.N, surface.P, surface.roughness, surfToEye, BRDFTexture, cubeMap, probeWSPos, bbMin, bbMax); - vec3 F = FresnelSchlickRoughness(surface.NdotV, surface.f0, surface.roughness); - specular *= F; - //energy conservation - vec3 kD = vec3(1.0) - F; - kD *= 1.0 - surface.metalness; - //final diffuse color - vec3 diffuse = kD * irradiance * surface.baseColor.rgb; - - OUT_col = vec4(diffuse + specular * surface.ao, blendVal); -} diff --git a/Templates/BaseGame/game/core/rendering/shaders/lighting/advanced/gl/reflectionProbeV.glsl b/Templates/BaseGame/game/core/rendering/shaders/lighting/advanced/gl/reflectionProbeV.glsl deleted file mode 100644 index 5d48e6613..000000000 --- a/Templates/BaseGame/game/core/rendering/shaders/lighting/advanced/gl/reflectionProbeV.glsl +++ /dev/null @@ -1,32 +0,0 @@ -#include "shadergen:/autogenConditioners.h" -#include "../../torque.hlsl" - -// This is the shader input -struct Vert -{ - float4 position : POSITION; - float2 uv0 : TEXCOORD0; - float3 wsEyeRay : TEXCOORD1; -}; - -// This is the shader output data. -struct Conn -{ - float4 position : POSITION; - float2 uv0 : TEXCOORD0; - float3 wsEyeRay : TEXCOORD1; -}; - -// Render Target Paramaters -float4 rtParams0; - -Conn main(Vert IN, - uniform float4x4 modelView : register(C0)) -{ - Conn OUT; - OUT.position = IN.position; - OUT.uv0 = viewportCoordToRenderTarget( IN.uv0, rtParams0 ); - OUT.wsEyeRay = IN.wsEyeRay; - return OUT; -} - diff --git a/Templates/BaseGame/game/core/rendering/shaders/lighting/advanced/reflectionProbeArrayP.hlsl b/Templates/BaseGame/game/core/rendering/shaders/lighting/advanced/reflectionProbeArrayP.hlsl index 9ded5bd1b..df53fa3c9 100644 --- a/Templates/BaseGame/game/core/rendering/shaders/lighting/advanced/reflectionProbeArrayP.hlsl +++ b/Templates/BaseGame/game/core/rendering/shaders/lighting/advanced/reflectionProbeArrayP.hlsl @@ -16,7 +16,8 @@ uniform float3 eyePosWorld; //cubemap arrays require all the same size. so shared mips# value uniform float cubeMips; -uniform float numProbes; +uniform int numProbes; + TORQUE_UNIFORM_SAMPLERCUBEARRAY(specularCubemapAR, 4); TORQUE_UNIFORM_SAMPLERCUBEARRAY(irradianceCubemapAR, 5); @@ -31,7 +32,6 @@ uniform float4 probeConfigData[MAX_PROBES]; //r,g,b/mode,radius,atten uniform float4 probeContribColors[MAX_PROBES]; #endif -uniform float hasSkylight; uniform float skylightCubemapIdx; float4 main(PFXVertToPix IN) : SV_TARGET @@ -46,11 +46,12 @@ float4 main(PFXVertToPix IN) : SV_TARGET //early out if emissive if (getFlag(surface.matFlag, 0)) { - discard; + return TORQUE_TEX2D(colorBuffer, IN.uv0.xy); } float alpha = 1; +#if SKYLIGHT_ONLY == 0 int i = 0; float blendFactor[MAX_PROBES]; float blendSum = 0; @@ -59,8 +60,9 @@ float4 main(PFXVertToPix IN) : SV_TARGET float probehits = 0; //Set up our struct data float contribution[MAX_PROBES]; - if (alpha > 0) - { + + //if (alpha > 0) + //{ //Process prooooobes for (i = 0; i < numProbes; ++i) { @@ -78,6 +80,8 @@ float4 main(PFXVertToPix IN) : SV_TARGET if (contribution[i]>0.0) probehits++; } + else + continue; contribution[i] = max(contribution[i],0); @@ -90,34 +94,32 @@ float4 main(PFXVertToPix IN) : SV_TARGET // Weight1 = normalized inverted NDF, so we have 1 at center, 0 at boundary // and respect constraint A. - if (probehits>1.0) - { - for (i = 0; i < numProbes; i++) - { - blendFactor[i] = ((contribution[i] / blendSum)) / probehits; - blendFactor[i] *= ((contribution[i]) / invBlendSum); - blendFactor[i] = saturate(blendFactor[i]); - blendFacSum += blendFactor[i]; - } + if (probehits > 1.0) + { + for (i = 0; i < numProbes; i++) + { + blendFactor[i] = ((contribution[i] / blendSum)) / probehits; + blendFactor[i] *= ((contribution[i]) / invBlendSum); + blendFactor[i] = saturate(blendFactor[i]); + blendFacSum += blendFactor[i]; + } - // Normalize blendVal -#if DEBUGVIZ_ATTENUATION == 0 //this can likely be removed when we fix the above normalization behavior - if (blendFacSum == 0.0f) // Possible with custom weight - { - blendFacSum = 1.0f; - } -#endif + // Normalize blendVal + if (blendFacSum == 0.0f) // Possible with custom weight + { + blendFacSum = 1.0f; + } - float invBlendSumWeighted = 1.0f / blendFacSum; - for (i = 0; i < numProbes; ++i) - { - blendFactor[i] *= invBlendSumWeighted; - contribution[i] *= blendFactor[i]; - alpha -= contribution[i]; - } + float invBlendSumWeighted = 1.0f / blendFacSum; + for (i = 0; i < numProbes; ++i) + { + blendFactor[i] *= invBlendSumWeighted; + contribution[i] *= blendFactor[i]; + alpha -= contribution[i]; + } } else - alpha -= blendSum; + alpha -= blendSum; #if DEBUGVIZ_ATTENUATION == 1 float contribAlpha = 1; @@ -139,11 +141,13 @@ float4 main(PFXVertToPix IN) : SV_TARGET } //Skylight coloration for anything not covered by probes above - finalContribColor += float3(0.3, 0.3, 0.3) * contribAlpha; + if(skylightCubemapIdx != -1) + finalContribColor += float3(0.3, 0.3, 0.3) * contribAlpha; return float4(finalContribColor, 1); #endif - } + //} +#endif float3 irradiance = float3(0, 0, 0); float3 specular = float3(0, 0, 0); @@ -155,6 +159,7 @@ float4 main(PFXVertToPix IN) : SV_TARGET float lod = 0; #endif +#if SKYLIGHT_ONLY == 0 alpha = 1; for (i = 0; i < numProbes; ++i) { @@ -169,8 +174,9 @@ float4 main(PFXVertToPix IN) : SV_TARGET alpha -= contrib; } } +#endif - if (hasSkylight && alpha > 0.001) + if(skylightCubemapIdx != -1 && alpha >= 0.001) { irradiance += TORQUE_TEXCUBEARRAYLOD(irradianceCubemapAR, surface.R, skylightCubemapIdx, 0).xyz * alpha; specular += TORQUE_TEXCUBEARRAYLOD(specularCubemapAR, surface.R, skylightCubemapIdx, lod).xyz * alpha; @@ -197,6 +203,5 @@ float4 main(PFXVertToPix IN) : SV_TARGET float3 diffuse = kD * irradiance * surface.baseColor.rgb; float4 finalColor = float4(diffuse + specular * surface.ao, 1.0); -//finalColor.rgb += abs(surface.N); return finalColor; } diff --git a/Templates/BaseGame/game/data/pbr/levels/PbrMatTest.mis b/Templates/BaseGame/game/data/pbr/levels/PbrMatTest.mis index e5713fe09..d762c8f7a 100644 --- a/Templates/BaseGame/game/data/pbr/levels/PbrMatTest.mis +++ b/Templates/BaseGame/game/data/pbr/levels/PbrMatTest.mis @@ -92,7 +92,7 @@ new Scene(PbrMatTestLevel) { surface = "0.5 -0.5 0.5 0.5 4 0 -1.49012e-08 1 0 0 1 1 0 1 1"; }; new Skylight() { - Enabled = "0"; + Enabled = "1"; ReflectionMode = "Baked Cubemap"; position = "0 0 3.83134"; rotation = "1 0 0 0"; @@ -101,6 +101,19 @@ new Scene(PbrMatTestLevel) { persistentId = "658580df-7bda-11e9-9951-fcefa3e1cde4"; reflectionPath = "data/pbr/levels/PbrMatTest/probes/"; }; + new BoxEnvironmentProbe() { + Enabled = "1"; + refOffset = "0 0 0"; + refScale = "10 10 10"; + ReflectionMode = "Baked Cubemap"; + position = "-0.0289133 -0.122873 1.6924"; + rotation = "1 0 0 0"; + scale = "10 10 10"; + canSave = "1"; + canSaveDynamicFields = "1"; + persistentId = "079c3eaf-874e-11e9-8bbc-bdd5fc1d7642"; + attenuation = "1"; + }; new TSStatic() { shapeName = "data/pbr/shapes/material_ball.dae"; playAmbient = "1"; @@ -256,18 +269,5 @@ new Scene(PbrMatTestLevel) { canSave = "1"; canSaveDynamicFields = "1"; }; - new BoxEnvironmentProbe() { - Enabled = "0"; - refOffset = "0 0 0"; - refScale = "10 10 10"; - ReflectionMode = "Baked Cubemap"; - position = "-0.0289133 -0.122873 1.6924"; - rotation = "1 0 0 0"; - scale = "10 10 10"; - canSave = "1"; - canSaveDynamicFields = "1"; - persistentId = "079c3eaf-874e-11e9-8bbc-bdd5fc1d7642"; - attenuation = "1"; - }; }; //--- OBJECT WRITE END --- diff --git a/Templates/BaseGame/game/data/pbr/levels/PbrMatTest/probes/127720592_Irradiance.dds b/Templates/BaseGame/game/data/pbr/levels/PbrMatTest/probes/127720592_Irradiance.dds index 6dff369cd4745a4f1c053e0b415e62efdac3d7ee..fe769b64fd44e6b94316538e1a53a06ce1f52451 100644 GIT binary patch literal 262276 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 z%0A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

VjV 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�c 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%0ARq_3XT;KHN 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 w6p zqxjoKco09?1oyI@&2Sg%+XA=YzuVv@^2&C&4*%EzSCU6|!e#i!PcRby*bNupAA8^& z{6n09U+jfb$RFZ(>@SYSFT`QQoj8y<)aU!~ueG{P59%acw=?_5F4!Kw(EZx5A8Q^h z@C(hWDSojPHliNWyc^&bT2Ed4LhGxEU&x=T;}^2WVQ-b)505i%>3Nd8D?QKP|I+h3 zaUne~VF&4X6*%Vyc?vwDW%fwVvlt>-&Y@YrW5)*8i06OOMA~ zPxg7h^<}R++)wtq$^B)|tKK^W&R`K1=cebUS@q0pz`N`dG)Z>^A5U7&wJ=9Js%Qh3*Zy%DIK3- zU*((U-c=iS(rq>4U%gvazt`R!o9}+}?pfX5dJn8_@4ScBf8X=35t`3?{&hn0d(XdC zNEcD_e+RXmw@~Z*4Qjow`MlQuitkH@7hF&F`GxDtUQfB7?DvrSi}&yw+4UBFB70xO zKg5gtYuOoi2EPzbu)cHf2!0_Rz%S0j-T1`?xC6hq2)B?gF2VK0#bvmfIJp9sW7n&2 zF@A9kF2paydHBV3I19hH0jH5y#fjuuaV&X4zaK%K5QngT=z9am6S`h+>Q7z2J9Ve- z*O~fS_is<0(7f7^Cp6C%h^iSH@NF7wo2Ze1Wdozkc=Z+PwG%dn*sU{i5UV{Hv4VO#d1s{r=)# ztEAfp@1@o4qxY-5|0nOYosTGeK6!7f{XcrY+4+lF&j)_4_5B59_dof(*8e-#kv-md zudIFEcrUEIUh%JCvfFe16-;(~hQG+ZkMIxiE`A~2#4m2bEBLE;9{&|j$Uh3D$|Y1^Wlip7@w~jEEjPIRtuJn*bmDEi%0B+MS_JR zcEIppKD+LaU|7Tk#@_^;h&3=xFeG9HOc=}=u>?jBeq-(TXL!bld5m9%r-_&eAA~25 zm)*4u(s^UkCfa+2N0az2La;>%p#YQ23c(2iPtA zK(GyL9lkBt95x7F6>JQvhA+fYyq_FC6-%N^_-HK5`{?2QgB4-6@GikJFim(XR>pk8 z8w3l%=;76Z5%BNuWOjZrf~g~BGfoi95U~KJ3}&_K$`t%IVkP5T!MqXcU?3QX*bMVw z580tWC1ut~6d#A(S?vEm$MsGVIN)ufhT7FZ~9i zqx2lks-*A8V8j0xM={p#|A+ehb^G}S_BuoOzOFj}Ke!0{;0N-*Zup!0u>*b}|7;zs zV)bu=m88G?Rr9Zk|7tyD@n@~CF#avS_waY=pBw*|{+Wpf>7Ro5kpA(4*&`Ohf5J0I z%!R*&r;V5apN6N1m;!HvCyp2o&xFT|7zGcY|1h{E{9|w+T#o*I;N0*>!R~NE__bgs zI5_-Nur2H!zCYL!wh7-HYyumEFDC+||2$SG{U@<9bO|4ZrRi4^-rMS)HN3smJym#9 ztNYjCwXN=7g;!uD{CEE02_weAfANFKFmCWazfBg*7%`u52K+h_<_PABSPp&oz1ANj z4mQG~!SIM}uw1Y}#4cDpSR`T}tcM+C*CxzDd7(9VKz8p)9*_>*nXUYxFSYjqQ zk6;{+xR>sq!%E}9^j{|*4TT@bPorVXVDgBGFi|kAoqy_JCc8gm4Q8|XEiZnc{lVkg zt6-s^v34m#d?-$;5-*CII>BOge`p*mW#g(fdG;_r??AjM?{+8t3!e2V_#;7#JIygwTj??Zm1kp8rP^FIW7 z!Bzf~KsPwgziI0IME|U*_k;aIfo8nk!{5$~RsUBT-Ro2Lf1+KPx?c$v_lFzZJ-@fn zJ%``H=$?kWm+lGunnw3%ez`y%+Mm3_C@FtN4(S8mGA{Y?8{-@SV+Q^mcOrbCd8EPD zGhtThoa#a_b#Dp$0UxY@CFp$(tiat=7iw^K#jhbgP&`}WgWa$_K2W^7;a0`J4|ym( z28QM3F!J;`?a|Cqz8D{-<3xNQe@sSSaSD3>+y0OBjouS^U!NPx=hV+A^jE$QrC;5r zKlu9h^j{A1pug&32K1i~lc2xW z<pMD*R0Sp8#L@iOhO`i#j`u_BlU#i0VE6O? z_nX5()cr=V8+E@9Y(?Fd?sfdxM)wN-IHP+}f1uIbA@2+Eepc4|08HuEBSXn&zcQ7Z z-zoGQ5K=93OcpyWcJG6DPg)!#ShZ=KTe^o_b2hbt{>0!`urGtbO;WoKlML|{&m0J=&$>C zBZ|_!9ra&zs~PoQy4PjA(!C1#ul24J^O4UBFhBV|AM;%RGckX~AsO*dTw+o$Rqwz0 z$xXd~!Mdt?f6I>@G7z5gqndm>?0+@7|K`6m>-!_XT0F-_Gcs$#2XG&A9xZa45fH>X&9G$2#v7phEHA z^?CW&@$)+XtUImYegC8J-z(~p_8*_|f$Bmud@u;cXI;=dQsRTLFbh6VUC770Rqygs z4^;n35SK-;0&!XfYfum5hlcoI9c)EC*aSP^1J#G__&|Q>%et@=4rX1@Iy{0^O*)Mw zU!~gw@>h8~2|q~BDPg)!Av*uH_5NgD7bkGtemI8Dsh<(_BfSTqyYAD6`)r5Zxv$2d zx}rbLJo#9x(8E5=g`hf6`c-~kxi3eEcVZekDjX(uNSQQ zir+2PeZ}(}@$CT*QujN-t^Q-9`wIUrqx&rXPow)7_WR2Be*R{odq;nnS>K!bv&_D( zI_rHg-Y@0%H@fHdJF^qhy5F42#Qv0hUQU>ZeO?wA%`c2%=<3-h$hf?$WH$d@vVY6m z@23CE-2V~dYRl_y8E0qsje6A+#ta07^n;1cS2<7C-EQ6T)7gwAUJ_xgCQlg?v^o<2Vu-PPY9bXWg<&|P`n4c)a~wIlB}p5|ne##fKL zSDmj)-B-SsrtZ&&1&FTlJ(#RgzGou3%J-y1cMOb4T%`LK>b`V;PTiO8H~nZPug>`2 zjqdyXS4Q_u?Dw1V{x9TxLpX!HuMJ0%_tju;*82*uoj;!ul1J?Gi^3}Y5JskTzdM=6 zevExyUYMPFp97}yE3so!-7m&Yp5L+dJ$Cl&_r2_agz&MKCJ+Z6_sB;u39IGkQY;78S+Ga zsKzQJKh(vgi(oTG{|ju(`nnQ!A@0hzP-dw*(LYR=A^1UgIRf{~AEVJv`8pO~NXPN$ z`oA0()*b_O-AJyN&O`B&`WZkpmEXPSUwU`pe!s%Dte(pAW{gL9UWexyt!q`NrW$ui z#;(;a0H{kWftoOCx6n_sRXT1IfX0CnT5-O6`{b`I$>;4E__8XdY zJtO=3478K@Kbra;(+>oa(Ej4(3dDymy|jT?@UE9I5C!h@51RX&@K2ljUh=P-aoqMF znsGh#-j(nK{ ze>u3RepEGchb8R(Usnf&|P}hME6;+B2k_Wi<4cd?*X!F z9L$N&RsYgb|5OhXkO#_#$mE6c;~&=huJC~$#pKUrp7WJY$5?Nh!X5tK>{R((DE9d^ z;XMBUPQ}mu7MzJs+2@sjop`=01e;Rt1F*W^*R1QM{ElW_5AmCr`ks?@J{|9;_Dh-i z9?#EDrPlX6xvAXB`*eZm@R64&5DDJ!Vgx=0wEx^<>dAiA8`YPS_)zuc65l_m{@mgF zDAl89>{C>qJ}{5wFmfPri2M*Y5YzZNc_5zgLnc-g`94n|rSU_6QOOTQSszBhvSIP7 zhHDkiy3A%8Y)XAqeznHkb74pPFdue97uAbitakE8f7T1>H4yz&KL#^u`DHMx;{S3G zZM{E$_jP?AKBv$3L~r#cpZ)8*Lgs#|N7B0q5EW57Tx9F!i-yfwwZ_WJS+1W z2vZPk)%Q3=y9fO42bp#A74^O??c3x{3wVxt-v}Neo^{|>>ith}nSaEr>ofe{%(_03 z@AZoDdN01$QGIX2{@#W4d9Ke3E3(dKheiBm>^S)SNuKLc!_0meGEjN{gURz4ejbzO zU%U)ttk(O)fp6%2+lwA}121}?$#8yG!T*KG>wAa|IG^8T;d=(%|0L^BX?WQ`Z^m~A zziPbCcuticK2XQxhsc45A@W09+$BFGXMN}ZGm;0Y54rhXF%%0Y<`-4oL*YLZVJTK+9FnJ!r{w@XY=k&{(JWuTxGLCGkUlSdrPu7uCb! zU61&yzBXZ0V_*x`U+K~YohHEcj8b}aB3klG7wU%c^*?r|t=Bt-y|1SteeP#Ir+jWk zKkByuQI^g%@t^!yiD(ajC0R`ezyf5M^4ns((mN~T?+Q~Ab@@DqsLS^eh`RFNwI4A= zd2yHLdgb{Ap6iu2hy5!iZrk`iS9!I<-(})D%U^5qd^GV_p7-`AnLKaH{!V$`faiJT zc_qK4S&8O-mIeOm&oO@3%JYW&u$Q`^`f!}_sy zvYGppVqFjA^+JrJJ9LP8XPARJCLgDzuF2O4sdLghD*Iy9^$+B`^nOgfSBKZoy%Ic$ z?q%R^bT0wd5l7|KLVumfvq@ojH`t$S;@$<_GxL5k_VsCDb-u?*4ojkY0vJH|*f2Y~ zM};ZT{X06wL3h>lZ|JVN{)#$(9p3dm`Dfr|@40^%9_QC{cEG*-s?P>En!1vhex~vq zsd_S>zaPmDEB&cv9Ge)Q>cejTS0b&yUu`vhIPdQ_zP-VIp$M-(q^^~OuX&zPUHi&D zr!tHl_+a7@pK7E!k%D+>znh6!G=aJBgM8tTPs*boh;utwjQvALSehuv9~G$+(xWQ+ zC=YAkR_Rom{iXa;hip+jsr!HU-|MyTk*@oR>-Bm0OZ}B4yOhr*m~|&u5Fbishp5Y^ zIf+h7n4WQ}o+rk~%I}y&UwVJ>znS^H@L!wx-tzC6{o6U>@gwga^pBakzJ+x)g!VG> z-G(!WYi>A_e9sC)(Oq$GO}dHB%#zzWX#<2}W3s`r2M4I;m{#IHN8fZO;rulcYa`^OmcJA&s3-Di^D z)7*EiKiK$g8T*ekyuN{bXePLW=MmMV!}vE3Jk4{e1Fup|G{1XP7wuPH@LW?Iek2~M zcaZ`w%yUL;{7{8j4xWj5=2KnDNSB# ze^rjr$uAY~iFB(-6jfJ5wJU_N9PjJ8(p<04mEiO0r!f7g-vGNO<#RBzmoKxUw{%X2 zPwT?O__ijDN%X71Z+u@?5x(Mk6Xo|^R#oNqCH8fN;U7d_@%WwiNbg@+SEct{qAtD1 zQE$`3{=_*Y>=2fRjalF0(yqe3PP!CleUAhk_I28?XJ$YD3?}i@2DFYx_Y(vzz)xP3 zz%lsDd(RW3>iuKBIpXgP{HoSUc$i=LlHR}bYi?8F8h#aSH0;Fp!XIF7zmD@U|a?o_n5u})-w``ABfJ}0Oqx!^^ri`I?5sWw_S9`jt8 zAHHGrQCz-IALNUu%%T(w!o{i=N!XpLUZ!Cc(>juwQOF-T@kK3|kI^XKT%seNgfJ@A zkpk3X`K1s(5eu_AYQ6ctEEx8_o{FTa$LG~gFgi=$ocK=n$wYqFfT_5@#*vWdOXnD@ zs%7C<_B;R9x%*}vyob+K&oATq06flq$%4D6lhS)F*{1j`Bwo^c68R*(2eY3~0=u%G zm)_0!JB{?N;a4|$m*P3@6S}ZS1fIj}e$K#cn9@%j(7r8>A1`nme)S>-r1wkjtrWKMHH~q`g!6g+)Oc6&J%sAhChAvmxQpi%)rlkQ8#2Pv{GBozyow*>i@W?C zOTKuXUa=A9X?r%tM#FZQRKdOp=3i39om!tZ0^*Mq;y zOYc^GBcpe1;;#HI$KPk9cLBbylis=gY)0?2eoCWvd_RuSJEH&1=>5ifW%Rzsui7cU zFY{}3Q{Zuam2ec?!>NHfOH1`3mp-3}epHu&=vVzm3p_FP>O0TrdJcNW z_hDM!o}#yOzRh?w?n_iz&Eps01nPiFmo=RNc1(SFFf zJ{ex+R|iMHll=N)Ke(4)`|JWY^XslZ!xj9RZzDLDUmL9fC-Q5-6<}#USztY^%syf} ztb-r+!)Ey51Z;;Nw7&Gf4>#dJ{O}Nt#t*OI6#Ss)jd|3ENX%Ov^`tgNzRX&LrxN3BW z8n|Kn5`!$!`WhRzN~fT}1LL2#j8Z=Ok3nJWSolfTMGxFDpN~w`RhPa}$JPIP?xXv? z%~dfoAGNM8baNYFUInB2l-+;`c?HyQTgOC z^;JH3!E;A?_=f$3^6owR>rC(?&mq$3GwZPY^M!iyzx>QTMDKq@S6%He1(ht}y+WS#Q)AbM;4+s^kU(s?bbs^+zrDyw-;V;`se)JXC| zb-Xuueh0SmD+VsZhJMk&DOiPg9)QLCtbyO4!LPcuhiCXT-=^>YzusIMZsk{>E5TL#`fN!!pI;p=2q*FD?=~FH=?pnw zA5I0x0CV^+c=F?WP5+~*9|inK0r~4k#xWCCr2Z^|weY2U(b&&!e9@XZC0}&mc|`N* z%iUBjhH>}va6I2n>G^X8e}}#c7x=ABom)Yj&~xf~T&w-fHoo7AK-~7=i^%XWbyM}@ z1hdzE<1AH9b>uSZsp78Ptk#)Zd|#FT-lcvh{~nN+T6Z4#+l*dM&`-KO=HJbTk7(=t z2fQ!d<$CFPi_fc{>+H|v!;5_HE?@phozne};7^TbH|v_lx0!J&pI4#xJ2S8DM&~Jh z8#B-0{2fN?XD_nu3~WnWl-CW(bLDjv@?3dU+)o!+0bM^~Ky^HeA2l!;CiUMN9b)*8 zO&$Ntug`Yn^=ItgRmX4gE58llS$>VXIy}fet{l{_>=%Wr$nyZ4PoC$6lgaZea5%p* zpBnbzbdN-^Bd18jhN=APWUT7VJ>#d`{&T*0V1G=#(K=Gtj}RCROZzbc<6&jSI~~^c zQ<-|vl-`%qZp+=)!LHnW8|+J!*#n2NZs>c5anuRWkSu>#8LEaW*Ez`xUYY4SRze}^Y= z{hj_2-|$QKVEe5n1R@4qoVEaHD* zh39)ZdK&_(_;CYcU>)Wq|2E<7TBq7D8r6+1%zp*!&2xGJW(q2eB<&$N&@*G^v-7mq7_(OTMjeV5Xn;qyO-|WFB_uxLF_y8WjFVg8CtK%bh zh<_g=9)x;b@9Vm~?8{V_cCjwqg1@m|-+=Pp6}Xx@r8@Qtd9CrxrOIl2Q>f?r;3)j8 z{ZfC{L9NqW(R&4Ki5d%FUFy1YuE@T994tzl6fcMR+6!j!|6yk!-5;9#i%A|T?w?uD ztHNij=Vjnc*7L&fEbF-o53-);g4;M1AR}DGX&%Ypd`_K-2X(4aG&qb?n7*NJFHVhl z2Rm>o*E86R(`W9(+ME`p-?je2uZ(M5i0bd;8wU1I{y`Md`g6kU7t;6_P)Otb3x)LW z%I}+fq)(mDKBEZrssk+Te>ZibGW*oNv}^nE&3qd%Iz4x`Vm~nvcElGmU{8FZy4Rn2 zu>=lhmWtn4+`R@);oq&OPR=44+u(fez5^~{SF;rm>seBPe#U*&t%LCv!!dJlr-P$Lu;Vt*x_gZ&R-b@qwbmnHFUntfSx|D1{QC%%^{ z!gWtMRl$chIXxpc)F}X&;6YAZNeQ=c+DCl2iqm;wzXd%Jz5=Ji>38a%v2LWGpMUr@`t$RDYXUKjQd% zcoNk<^oZFWaxXef_HbN5+r0`8P=rtgi0Pw;0Z0 zf3+0Oqe}h)=QFBha6uT=*6Z_dv-~!P>lVS8R6phG6tZm&9M8X-kUvM_N8NuAbxY&v z#dt=*PVAnfZ%d-3Jg!gO)4ZxuW!u0~=-m|NNAEf?kN?!>w?MWsQw=& zt{>RHDW9KE*OkwIQP-u%Y3jOkK0sZM4!3ezh;&{_U6;;tsq4z;37j6J-?tyaDTey} z{GOb~r{AG(%c)a3Z=o@#{2hWdIE8FCEXQf3I!~Y|rwZzvfxkGNLjB&Oo-pLu~wAiuMoq zq9QDYE33h>)VUHTilIsS*VSKJ197I3TvoFuTx?gwv*a>!I z-z)#NVm$J5LsV%52lsE-t*r=^u*!DNcRS`n=B@YS!n??AM>tUe12qoNvG>Q96HMJg0)`oPj~C<2rw$ zJEt@rfUP-AZU=10sgIkXPSMr55@pbP87$1Ht_z^U>94ckN&F=LTwtHb->i9_9O}P< zcR7WIziHviDP|pcgD;{mzE9MnSTLf$()cqbzDPQdfl9RNk3?+)4e=xg`fUrAqfXhR;+#&TzVze0GIX zi*(+`EuJ4Az=y0qsyi>J7jNKu>eNU0jnhrE--zljH$DmS*P8hz_O}>+ry>rCnRiBi zzuB+k;I3(C2Xj~X#pkYBVL|Si6Bg&Ld0`n=G38H1vOxQvYD7zMuSs?&zv>dj0pFeDKA+QiTbuPt{``qq<%5-|SE|dU{YPe8McEH$ zpdG^aQo(#=UlN#wyjK3E^7olK9iKdiKsze)S6n{wy_@ps8F6|9|Mte4c%CPoIzQwH z`K@zTb`W=+)3O%5_rpcxx6W6ZiryRHNc8>{_C@a{up@fUh0W1>8mx`pI$x+FrvQ(H z#W`(O`UW@!x)035sl(l2Chv(kcPu5RPPeALl2cq)!}Xj#sQYYV9g(kgb2{BFc$ibn zR98-L^-*}9(;u~exW=h-sz0~chiD#;z2Rn`@rt^kI`x6NAwPeoZfHLe&0l2v64zfr zq_w|XM~16DZZYx7NYzq($xa-#ugU8lHtUc>b<@5!KkG|ESjazbd{m76hw4sA^hgG^ z%Td0SWj`X8M=!C$|1i0E{g(Nhu9F{2v1+Q{;{H{mV_|klv1x~p$69x7?jH%}Vii?g z&P4sz_)`+4*DwL|P~D79byXex;>`<-!xWRh_c_%|d3BXjzZAbyl~oDtl!diBI~#G)hWHwH+|u|bhwm#;%xXUr;ci! z*uZ#}!rwT}Q1xXG&yQ>2VfLAu;7Oh{a6Ge7hhEe<(tO%-;^H48Sgu?xkk+)c6up z*Dk>zf1%0OD6F13|LHUH&^%x9eal|>0G*}lb=FnsdImL=Ux&!+U*LA?_&m6Vd{ev^ zaa!~QIE~X^N5WB@605xJ$0^*sVP{Sa?gn)_bbDBbI^GIaqK-F)CCF>(8sa@Qy5{k2 zn{z}naq4_oUQgkjG3Up|^ZqdB0!Q`sne(~7aBh;z`y=ST2ONj5bib)yHh%z|O??>x z7joLL#WAX;i1=)UFIZm`FRezZH=kLZ6vv3%O?4+4cT;?0b2sHreD05zi@ zauTM(KVlkO`!9bn@24U9x;{0p>+>lYrTR;bo`+y!R8iek|JohqOW>9f#=$hTTV9tR~i9!BLDuKAYgB_S?eg zJU3{ZbLp)sT+FG|J>g33ruAhV{*Z6BQnxhEo%mw}Jb*vOz(0t?czBw1Z8E$_{g8jI zlNU4LZN8VB10S*u%16)nzH$+KgHM*g_k6#h{P|2hQQW`dmlZG)cUuXg_`?jNaaXmY z<61EW)OBhvgL+^6MCE$*tIscl-^g3#k_aI z`?Er@66#un}{*Su; zHLt6mS6nv`zTo>3>GqU<3$c z&r9w*a0<^`s=K4e=j?ER7s1a2yQ6bj*oJtffQ`{vde)$ROV4uDZ|PaYJ7MzErG7`C zozvSvM)L1pyiN4LzS;ZLdktfGOK=ST-qxGrJ%aBzpYR@hhR(O(UCyQa3tmI#tMIJb z)4K?dao+hkxZiC<1<~{2A#>mI><@ytUlsO+8c$8GQvImsUG|c|Cf;>s$oF3Ko)Wfa z{Apkp>Qj0cin}z={?x6ka474Q=0Do|Zu~TfSt%~l@kub8i%)F0*h}PVAF`aP<-^tF zi{iO~xQ4(jtUJn=?er>YH7fx3(5twgIwKy$N8%w|tLqNK{9#l-hj?H8YgN?!_Van& ze-HiTgFEP79+MrFpDIEzN5gYNdk<7mx`|XXzM(&R1Y$ZwgM~ zxe}evz!&Iz65dDWWAHC@J`B%u4)FnaoO7x7!UJwIZx`I*HlT8_KDo76DcBFQPU!ym zx$i4jgjY4LAK5qj1IzMhjkhvB`2?%uldrHYKKTwCGat>b1@deoWG$ACTY ziG1CU*~NiF@W0|TlDou*<8XBXIECmajx*?0c`?_Ef9qt?Zxj9TMf$Sk73Ihq}u#;i5p z2}DElAIbRN!GUC*@-UR=XvMD+^OkfRADTzc;{d05or{94++x86Go zb9*a{ei^+*M!)3VETdmsZ?dNmq1ZU=7zyx_L- z*1{8R6P$z3-MaKlzPQ!BWpJ}w2`4dsw+we;zHSL`KFs9JH1#06H4WIiQMNfYJ8IzjmA5H(P{i+c=aY6K}+)-OiOjMFaImOdZ4T7W=E># zY4|g0oq&z0(|^F)%>NLqO#Vo>(&#JQ3VAC{zPa9FlW#f6<4wGt!JEnz%I|SRmVc+@ z4d+VfJ;3PoiF2f-*DLDvLim7sJrCX>k7vURlJqRS zi+E$;Qa8Uh3eIy~Zv>p~=JSTZgx(-CuB5c&t5jUI9j5oj8oyb zUHq~S{=n!o-y-;h6^pvD!o;B*vpP(>GP67atK-(Aunu=qyc*KG>Qz&EJq}yao7k3K z#EyJQ?84Pzcm7ulC0q2l-sG41>5H$_Z$DJgefmS)SJZg=@xI2_m+Msrd!w4>5lSzb zS9d=3JM7G;RS(-UjxF$Ks^v!5jA*Qb4H&<4s!2;aRc61n43_bJF*+6X78spEh>vv2 zhZ?hBR^m7vrXjvlU}E%@KC!(}Z#<0TbvF8ZblZ9(X}@%v8(ki_4ZR_>Z@9HlNP1WE z`oj}$1+OnW=$7(&!<}wXdXnBhcs<~1*Ymo;rRduQ&UJHg2mJ45@jAlsZhEf+9O^hV%%{bl_+POWJ`(E^XZ6#7=&RpG-WqeC zCR97!w<%OTYlbcwUvsGOHs^KCqZ!vLUz+gwnXnQ4Nsk8fFFoqg`y^PC-lRu0dKn8V z5e?-_8OE)ADbCeHVL`4M41L}m0Q2&y^vFg_dZhDuc|Bn=udCM`#v|I&A)439>jb}1 zpWDNK+!CHG{|8!d?@&pZskEe|H_PA>8QZ_3Fb_ zZg#I8TcBZ}TCX;o>ZbH+!EtU9uO=Ms#`kK#0d5?xI_%}f@P2~N-JguFUb{67 z-???nygs@04Zq{Vfm|2aYibyS(aDcN-p_^!n1$kzlzED&n5~$O*~`C~@sF6D=!m(! ze&&6P-gKSI|Ej+b;wToxPr6@WvO)1JMx5pQ60C#$U`ev24=jyJigy|O)(e)Ut+M;+29Y z(X}KzgswlrU2YDqINXA+#o$^uomUhtL)Rj3KDri$GtjjVoQSRk;V3t{;b1qiSAcdO z_dAt=I_G{i?C8EXZ0)|mQSw^>GtZlhNAtZyJrN%;PVouri1?CygZP&9Mf~7aH2i{Z z)sD#Q#i+QgF^owZ#2}(2-zFeFViNvW@l3(h4Pa`bt+=Kq`tor`uce7^7UC-(XG0yu zIR{yyIOjq&`8GGK2J^rwhONCyVN{%R^LfQN7yXrnIlSg3uGzSs;+logDV`Y_jpCS= zyDNSvxvS!mge(cb_^9c@*r@2hsPt;V@8oAb_TZur;@csb!6*Yuw$| z8$6GmS>Z`HvzG-PLeI=_7kXxbThTKkT5Kp_=49|u6?~l1z+U0-YFX;H)RX)EroZ-GToanwZ9EFa0 ze+WA2`o8EW_CQCmBRYz$-K(zd)7-t}>b?!#^My}pWr_C8&_(7`kfy5 z9)@^Hhd=oAD|j4Ahg06g*Y0$#G&pX!~Wb|p9|&g>aUBt z3uXBJoxAEjEote#jk!wWsE1A(R}FW)8D|xDjk||-dG}Wo=kM3Vc&So_+&bie`YaX`D!k1 zl9PT8JR7-A8O1cXj8RO1ONibixPYimfO8nlcsPU6jDu59MI4VlW8o;&6o)dZF|a?Q5&q5!i-Y$ z$j_%VFOOap!eDw`0&{b>Utl)wu6Sf}N4u+FI(MYI8m4kbn7Ac#hnqMic89r}c)d41 zlrH_C@?`+?KMDuILvSeS9Du{2@?|941xG{qa~za^C%}Jwzu)vfna{7`^(j!}n8v4< z!Rf?ReHHpg(M(Pfsq!{{-Kcq>k`aDn1Hi)11s%G<22s*Tc0~k#U*oWvhhdpsg zGuVYuHH96Bzu1Pji!B(P*w`IquB%6!b$t!utIt<;hnRjVFk0QGv^&6U4U04Cwy==f z*KH3&7=0(`y1m>kFrOQ0#-G#eVdj(7?QZ6mkyka}v~E{-AWX^CgJDu;ISeL*ic>s# zlMiFN9gXi|K=~~SQIO9fa#!U+OX9K){tV@lHgF|u2c?(%E4?~F>D3vR$%kEuqx{(o zs=w}BH4*kCuF8{8d_D^HBEA||Z$7Q@_9o7KVIO)4HJokc*_Z6>NV_kiQe65F_g02e zOg#HA`bM;S6$9P`6kj7qFVyh30lTqBl6O|c~E>iuH4MxQIlXbZp)w~6W3 zVbq0b=W`pH`{r~TxFu+3b?dt&VMb}8h`x*<*OG^{(l6O4|iZFyaD^bYQ#~#s1BuD4g5SB*2F!- zVQpISR~_QpAJ)ZP%Cow}xd*IIoYjAQvQqbJz}5131N<)kH^lE6XG7wyaW~|yH4S^2 z`8CAd6->Lki9P*vAwWVHHxTGUp5DN$ejC&5*^Ujkf_62^sTU@T^p9!7(iU}RjR@qc&noB4cz zn%`?^!>7&B znspQyqPswkIDd5b_g}>E6|~%d`xxePUH2}`jcabg9Bw}M3e4)}b}zt8jN%MT=Vo_L z!PJcA1Wb-9$6*pTgJA+jr*@E=*1R7J6?J_yMtd4YLfv!lo0G!51mDB!@P(7yy#*h^ z2kU%;Ol01`j$Z-B@sslgjw)cPL+NbyB;@;RYv-@zEM5EhA(< zUgoS&VO{I9W}eWk(OymmIjGvSAJ5pB$*G z`jmtGC~8>Q)U_PwqCCvORnjpB`Jww|=W6*kJG#i%+4+?Go-Hg7vf={eO;&W#yt3d1 z>6aOIe`Efc(B%!xKyQy=di1yf)1k+Cn1-xA22+vM`(O&P`Zt)2tX>C`xJljRFcDE& z0OOODGhvV$*PRSwyRqG|Foqk$9RZ^d-yzVMy%&FKxFJD;3h@PYHr z359<^yPQ-yY|&GZJoxr+!HHx1(#{DodL<%%l$Qy~AL*G8opKrmOkO6y zJ*uM#&`Em6N2kPwxrway899ik>RMLg-yn2S9>(EQ8fP4IlK*3&lkzPlqxl2IAgg!7 zXt-hn)To!i$n>T-MZ_Hw;dgWy2ERC8oIdaaap??SJI|d~@VWEAX#^iRx15^ru5-<) z3~xFYoYL?LQ7i_}Ie$0>;7RA8l zxWHL%IMeyX$w_;%v&6{*$3gWo0#!XY2>t;3z@jkJS?ZL5UHP2G)q#F$!8XoHr!j2l ztajSKX3jdN8*JokG`_0uY&AZr!}zA~dM(B~A69qv8{brOjxb`@H|Myce5k}cPr{1M zc}MlFJg!mQE9d;>yo6U|@;<9v6d=iknIXBPYmpDX{aI1e4= z+eOCH6`p0Z((#mY#;FUBImb+#4l~aZwD&Rp5V(shkxtv3U!6>F6LC!e*EsW>_;7_Y z!-)ZxIJgGRbw)WKY@Q3q%2#kAQGEhOJ3XEIaEQ~zxefa|?VTI2hx4;@4R&-|I9FjC zr>S!VHpg9JL#MuZy|z=&xlX&PQ^&apE5bXl415SnFpKA~2-m%Z1)K)X7Z`%tQ5l!( zG;`uY%W3H(gLzRu1I+DoaB{;Oj4J@MGtS~LtJBxSBeOGz9;uVga1*bLL{omr=u9^C zCj;{zM>{?7m~FTOr%^wh70zbEwa#9cmN?2MX`SuPRd^B?$REe38>%lysV7>$4m)4T z7`_*w{_TQ$(QiH6MZT$i{qEd!ronB_CF9dg&M8wD*E@%ucD%mE*<Z5Ij8l0ugX)+DPG&yRaU6O@fg{Ow={E$IJcIq6w$3dWO8hRtu0-P`Z0}Te z4!~AUMP~BRH$<27a+NsR= zKH2Gm#`>oy5_~fnK-f3;xU2zimZ1;9lNB^-0;TYX_gtHJXq&_HL=Q|fo zzRt!SGilFY6&ekvpuX0{3Am^O983PGZjGSsRf9uun{*xEOfq$~w=;ssDxU^8DPd=) zyAvC>!xfrOEA)E_o02cezXrJD0<1-qJPNC#n{=!|Z|h(ws;u-Y;$${)&hMl)dbsE^ zgxB*rahzT-E3WAT)01tjU`pp7yAe#}ys+!QIL;%x8jMD^R)pW}8+KXv(Y|7rgm3Kg zc5(RBK4TYy_wAE*QFzNfZra!FW9I$K_8;c@^H85Z4b|TXu2cVi@VUD1uzlKY0uS2f z>^5+}eaY?$_u1F&esHgS%N_~$*bi*^XpjBeUTFBnUTyfv-VXQLk(?ujF-)BH+3`)i zIe@QT^ZG&jq&QH!8##7QM z=iG%woFZntKcJ(=?=qU-U|uJq$&2hxa+5C^8TEKxPfc|k1d}?S>~1g~Ss)!_QdR50 zNL1U(@QZ!X#Q&Xr$}T|rg?-qz-~)S?oekcyx7umpRePPC44$`F*zw^BdyyRr9=7M& zQQ#hXx*Y*-w!ftep~$wkO(|;7EI_o!fAZ9WY#EmoQvz<~7P*YuBee+TLQfhGUpd zPdLs#WDkSm@s)fs(Y|0WhEwqGMmP=s?1MAx7dVdpuE73a{|)Ea5ph2I7CV;n9WJsH z8h|aW=-uytj1l2-*DNNN?Jq~edI6=_C1>g95UUpIHFFSgw|BURG zbidT-srx6TI&FaQ$w!SZmJ`vL3?n=5i4=eLv!B`B;X8ca622fGYQaa$s~o&-@3#xW zYxZw;K6svZWP~T}U+kptusz4*jr&YyNtaVcEnwqU>mZ1BWz9;5F6Wt&HMG? zHrjRUBK8hglj^V+R!7alu$o=UJ_)Nbs|&CS>fSJ{Za*}vYri$`H?hCNYPej!`N{5R zr+_t?hkRVy9%y^8E`ItEHn1n#Kf%Vtp($)eT)M!P#Az^WL)_$#_QY`s>};Q~H^FZB z}!{{H^6S_u^hIyeS1D^Y3H@4!G?BL zdmOA~r?W@EDnxf6EJt?sfhFu9y9X@9-Mhj7RiP8K$?A?U59)M)*~xabGgBq>etM|u z)AD*KOwD!uU`jqW1SY2%j5dsEPd1Ee&oxYJFM}!URA$_%aQ80SY3!WFpXqGdzDzqK zRqZ~^g6i^jcDs_PSGn!lc4FcbjQWb7Yqzsq7(%?XeibBsHDOWej`FJ{@ePG#QEL>e z#HunIR--=t3TxVX?Va$29n(1sAKKrjJgT2>aF+7$fjteLXT2H%BD-zOW(~KfkeJnY#4eN^I)N7b~58k@q9mIgCG|QXRBD#iBmNB);+N@@BnBj0jlA{*qw9X^gZ8^S*x&Spn^||-!qxT$vyWMd8??`v zXU{|#zMtS~)u*xc08^KTva5+kyDzSjU%T1yt@rSVHPU(u_gO=&S8%5_$a)EX zvj$i%;AT`(dp*?qYoV@R&HEqVDz5(qSMvEN^uLn+V#8I|I4cqS)tX|Zfvc_ARyMfS zT4XtJqqWK^3b$ArjZe4ZGx=nfb=YbH_gSZ{UhuGW%~E`hTlcM5@Qn4^Qhr>rzVQj3 ztMSQ6c*ja=>g6LVqy3up3oEaw8~<287@a;_rS0tK6p^gez9~ApW9?g~vzw?6$CK^K z*aN*-n71!BVV(oX2JUhmuCkh0C*WeMzI7PRwQ5@X;54g>wG&RT%3Hs| zQC4YdD;#E(v^K+mWV6`UDrVRVwe)^Z+Pc2GRl?c@yK((~*cEpkHLPg;Y2L49U4}iZ zI@T@N3pZ<=eXLf-cLP{WHsZ|Niv({OS;1X2V zI<(5t%;n4T)>OF7x{c$h%hq#iJ3MH8wvNN&Rt&TMIBO-bU(vp7Wia*lCjQXAs;%9L zOyqeCedEA7==+K5s<6Ilzf#)%0fpEXvU^n?d#tCMVJ`A^G0cR^Cc_l=J4@?peEX3Z zUo_mI@qV@bB+@*WQXl2_C*-O0y=ASmGQ!K&Jd-DXl9$nFAGU^@yxL{;G4a|$Z+{cF z)l^UExdhiJ&a`8Ooi>N4AwZ8f~G93(HY8`oPjwbi*GRo!&1-dw^j~YbY#=D@Va1Ry=EhVIpg~ zc|V0UAC|DvTPt8GvVS8i%eXY|idKkq3|7NW@<}bLf^{F(w`y7cz@}Cczg&b>;sFfU!KPm4VfEHNITQK25vHUrFNE=V3K|civD@wozp{?Cg>UGsE_`I| zGvm2wZDMA8zlR%Dmyc6-lf(VwtLm`o>PP0cjy!z~m!a!*IG0{d!6{Z{lb@rlAFVC4 z2U+>8l`xd7mr8M-n22l^<3qh4*E$_s76w^ogDVs!=PL(0UZy875&I@>6o$JshT?icNtTSuGaA?D%mV%!^M|S6p@< zC*cpw|1VgaI`bTswSKZ95XY+2lZ3Di{!pE4f+~u8YgUW$u(LJ8Y6yE-znJ~TU~98A zjP@vWQeB=*Uap2o*#~cevDwEif)QDFrSp60iFAHuoip|N4*Qzgw69p(sFZwPOa5yA zbdYr|GyENWwcf2qU#+vtxa(`iJJ)J%-G-C#^*K1wDrX&p{aMAOZ#SyJa@dwx%!W;< z_R7=RtlrAY%2s5fYboN^nsy*X@I&y*;FR!9@Y3L9@OkjU;KcAz@VwxJ@Luqo-~{ki@NCn*2@}!&i`SFF z>s*(@a6xcd!zHHwzk*ko`~A&*9A3X2yg9faycfLF`08=+LF1R_!KchT-UeR^Zp-_h zf^P@+f)T7|!KzQu$cE_FxsBPr3{4%1Rkj>D|vgM5*f-KX{^0pc2&xEDnw?SIO! z&g6vEtR7|^smuPPD(z-wE2!uxD5FUZ> d2!ux@U1Q=6Hg+t_AijG672nVFfHnVC6eXgiJ}W`^^unw)#T z+%Na+-#*W%li8E;D=m1}s_IguLNoRY3JOY)Fmg~aDF2(WYqnn?D2Duh|3Cg;M*iNY z{BNl`%K88Lx5Z3YEGWqQU;cmpYHa>x6#iHKeUbkAadSQ1|0@s_(nOE&&%uUzkbe-? z)jj-8Fidyw7sD#LnLinp({=s9u!OGScZP*@3BMuKI^b7=d37$o0L-e>`q^Pxoxo25 zlj_L+Z$Bs`j{cxuz{vWkz5(BQH}qk6*E^}#!BgHYJri#CR_mc~u{TF|gyX%j{3i#6 z^z!=YQn0DlUfZyW*FdL+1-!~SD$ME?(QkB6NCMB&x8YYegFX%;+=O})yyyn$xp1%h z*c%B~yT`ph;52uo*9Z=DM|u@uTepoDfMIS0FB2^4=JDdfoNiq2wHFkU*nQz1h2Pa# zcQ%YrYurxof*R|Vg1b~ZHx*p0D!Q-SppY>tw|f|NQ!(A?u)cbx+QQQ6xGDmJ)l!uh zCR0OIgbE7z=`>cmV1!dtje}>MbgBv5;(T*_ILEo^#D+th?al)yD5Q-u&DjR4Io+Hw zFuzm7X$mtq$|(q=I|-e{@V5QXzHam1+g@ysfz9+J{|Wju(PR7@u%Z6bKMm{YzW!bq zrn~xUVO8DQp9jn9hW=PsQiu9|VTdm4w}HMc%p4jjR{Jz3x-qDAE74*9%T{ zS9{Ii0C$X61-5qEc?DpoTgl4`L)^Sxe3%{m-=S-K^gjW=sx$6f_(-jGyTCJQv|Ac( zRc(y^^He#b|8SMvJ&3*?RaAE>tfd~QRZ&d9u9HuV zfJdFAsvcb9ymNx#BNL_b!x+;PIkwJpY3Q)ba>1@ zW$#D#DfTG4i_w3Y{~BGI=n4KK*ieu3ufcl6f#a|ifBHLNHR8ZZSdlm|1D4Wt{Nb>O zuI&E-^XcM#Q)p}LSA{usPQMV$z}J}rrqJ>Hq%eX0ttAdb*KhSd@Qe3QUxQD)%lZJk z=pE6k;T~^`o(flZOZ7lF#ha?z!2aH!ym{!uS6c*zdM)@*3JNLgh3UjFyH`s8K&M2W zCc^N2x>@x__|#3N_rObTG`$?|bzgXs;41eV5k>T0@3n#h-0{3gK_RW&4qgbX?pF44 zz=CeDmk4G-|Ig?f7yVDePw2k@-dC&KZt#Q}>6U>TQCGhIS*o=A5?u$YEbal=Mg_T( zVKsG6HHZ1t9u(!4qkI?H4yG~;;I^OvGd%?21h!_oiFIw z$ywr@g*BZ)&LSA%G<15v%ua|?3C46%JDK5q`>p)}z1P_r?Pai^-Px`Kn-Xn5qe~M# z#eWGK^3~mk^@szPU@hIxKMbquZvGZni8vtnpbT+f5-f@u17UvRKnJLFLBAf%rGx!4 zFq6*cyD$~%q=yN0G(R?sp+D&l==I%urtiaN}&IBdgLTN;LWtxX;%;?>b9dCuvTCDR0jB=Pd;SLpS_&7rTur)~;;5MFX) z=rwSk`>!_*u5vFCQFy=HOg%k;oa3&;0^M?UU6L)Emcta!^QnzS_#L zHg!NgSlp}6n-&z3o9rD6CiM#G_vrP@&8_dizunZP4!GpT(i?f+=YH^J!&UAzZy227 zZuL6Be(n^nE^Og;^-99ZZZ$7247j$J9A-fO-{=|x{V&5e>Xf?--c&2xp74PB(=88I zs-|ulI8hZf`u9|6-F@iWP<>J3VQExu2=l6q%7#fK%fqiuYjqKQA2_AdB6!TnsJg;6 z&UdFIoao#j69k3yaJD$l(6zoZ!Py0iqxx8w!zt%9hVh(ijt?X3$W9!%#Xf8wMehOj z0J|HkXcxA#!Nz*N9~=D}>Dm5o^l3oUeGlvDasE?STMzSZ!cg7cKLslj2P7YqBMz*9 zC5QvlVIf_^9||>JrPPIabpgLV%&PPFG$aM+Iyt$ zz`w`?$Kg@$u-*VSdYknuILBLT>cQdOWZjS8Z(a3K zjfF)~xjxLU)~Y-(E?NFNy1sLosx$D0Q&`Q0`<#@j9bDqPcM8Fg&UrFHP)G-7m2($e zYdFK44KTmc#2Et9I)$B@FtU@%$qg^sukGLHJlkGruYs-XmUca;?JRa2*obN?iP3+a z9}6}hAN)k0dent)VQoFye+)y316N=b-OE1$%M%B-z><88i(rVZ?N5L{)tS_Vwl3tudz7>{~T>VYWwi~faP@4dhEGkBLga1ov)5A1?ly&ZZnT-+u6(r(V12K17`ueb?J9kAd1 zNo67W-}T1B$?hJnC+zFaqM{@|y1l##u!0-rdC+y0mj(CkkxlEOf4-Z#k#0vkV41wVa+XvEw=w;cMc4dbo>f z{~0C9ss4*Mn)7AYE(4kA~26Gaf8^Me^w_gFK&}n=P6HpII9EhfW z>X`78_e#G-uZQG;zu;N&z!A8^+pE{YCEi;8iKGvl%RfO-NO!*47O$4;5IdgiZLi;E?;*#I8@~~ z-+ybmyWQwqMZKaz4wrtX^n*Ez9N131}vXHQbruoPkB1F3wz-1=Tyi7)}nSD7QKAo-v)aX|7xQR2XI zm|xd2K7rB|OkJ2;7xvro^UT`uYr@oYYsFw9oy5d}7&?ma2flgl^>_4&AP+o&m&gO> z;BN1b-UgR>o5)ns2QK7I3<~M(O)$PdQ*Qu~hkQmIApL;$!l^idLehBUb$l3=I`9*E zy>hebd+<7az;SrcjjA`m)%1Zg;S{?0!LYBp$ZG?ey8VeHyjN~r(+4`P?`7sWxtqv~ z1%IknI0)#4{+r<$^dAg2sex3C)GMl3s=a3L zo1NC={UgNv7(9=)SJ*qyyQbaPZVEHnsqF;trFFwPfd2LLDnA&V!>P8i8r>KBsbO8J z?*vBw>3(DwMt}GL-Kz4ZFMdHqzQU`p3~@m6K{4XMCRjk%_vb@TS2J~CUR~1f!E+Yv z`;B25vUEk5M5pq77>jC6`hs8HR~;QbCl9CHwD5-NMz9KXKv@{T#gROap076UH3`i95*j0cG8AuQ1P+o8QX@le$Ta5AyaJ?Ep z#Xvtvbk6{LE7$1XNX0e!m%`l{hTgf<0aXLWQ!`XL_|EC9{z2bsPB}UP;m|3TMs&QND3%;Pk0M#2P6KBo?huoIcQzs|m4e?jLS_5^z&EM}Lp zE5KNGWcxF^U$ypI%VAx;#t#_1|Mwo$)yw=W=6Ru?3f7`7jBE6t;{QUQYQ%wmVI|_g zeOQ(_a2^)NAJ_{E>8AcFsEGqo7h1%DAuziR@!P|6s8b6j(-}-0h=V_vi{~KyODBS_ zyx00Gy4@rXJcLKc1JW0+Cl73bGrcvY9vnzNIEd%g-U!}2z6a`ns;~eqj^u$%bn)q6 zEV?-H1>aH!zCgd5ZW?_B9&%%wI$(|a)?32!6nua&u&=wy>k6BoW<6NOZ77vQNM5&q zmlGy&lX(f?SM{&^5`FK}|Lumy(0>G6js9V9qN?p?g58y4^slF4xjWIhD8A31FpJu) zs=^rbeW~FKr=5C=zUQ41Y7^Y-q{a!Nf8=W~2YWfEon$cFSxhD%-#UGqjW84a-T)ZY z$?H^sm+a_H1~`*?{}FmOChm`dxopRF;alsubr;?Dq5e2n8`rf6`qugHJ*cBs`gwV- zORupkI4fe)B%Ng&O#lK4aTL56JPM1tLQZ7FYtqJ!6R-weF&~~KY1(R z6uP;IurJwM>cA%Wzztz(w<(nb-hIQq zW6AEBVHdhP@qcTn7)Jks>OLI;@rkdzGK{3gs}wN8X`vpX?@1?wjzIdoB&sJI$Jbs0 zc6JUq@n9(Z{$J?pllND^6i#`kJN#&8c1poL_GddO9745!7QM^cP3*2Pv7O3J1MgT@ ztmEju+!}9nhc)T4N*le`oA;nL?}2ZgSNM5gE&jAK!caZe^a<6d!lW*!L^b{qoyyUb zMZl7}x9Jaxkd;CZ8!>R5K;|KL6n~NXV*d6ONg{9pVR1*C2yG2bO zm=ISl8P6ZpJ6C+b+xY)72RMlS6W}uRuLnn?e^%I01-q}&x4MdE^!L>rHJIm=xVshM z4`;MW3h&|f-$UO+_`Tx$EJ5uqaG3Mh^nI=9@}u!w-kIoJLf<^({dq7x)t>l05A76A z0l0#%J{Ig?PqVk7x3(+V;qZqQ*^UB_S$nJv=sv;fX*GahMAgdZSyONH%NV`?7Y}OT z!fNyLWqvLgsu!C2uo}@<>VnGjhvFNR$1i?^UZwN^{~jz#cXk#QAP($;9&un9%tIWI z{xB;(ac`JLyCx1KVoo4^K}`HX@d>|sk^Iy!!h545!HeE~{WtpU_0H=Ha2a`EI~0NI#I9IzYojUL`Xh`t0K7^L&pwP<-LzZW4VCuBQ*!3a8Nr ziXYV1-C^p$#`u8Z2bXc%nm!=6ThjD_3Fzul@$(PrBON4lwmL`UfS*ABHw7*x{x^Wb zsqV7FwkogtFZxzik&XTizMtryL~T&z;U{O9N(67w_x**wyB(z#!?{j$)A#pxZabRi zM$TsE7rGWF+n<72oJLH1_->qlne$wr-*b4LYM(d#eqDQz$@>{?-!6mh&#af$EA-xE zEwg6AK2~F^46K3M8itNxdb3{z{@?eYCV8Q-`S~i}g`wnw?65j@q0|MHi38#rRlp~b zd{7z{q(3Oe*C=zOLd1ci&?gRTgcfmN4$Mv*7zWeh4@n$I#=KDKf!O$i;u8kZwPl4b zyw5r=yzWI9f9Rlh)%1m{$pZ(`aT4>PWw1BZ+gR9`ey|HHOZ2VVols_oDv{^j?Vmjp0yL)6E52q5oU-Ew3V(`Y*4#L5C=Fp0!Md@DH8AbO!iR zPAzpEowqu9)O?7xswM2Z0#?l{@U|RDCh7bqDC&Dp}g*88bbz}xu4Khf`)_m}AlH;@NT^E}<#X8ghaRBz%7 zv>{V%y!(0LE@ADIKrr~hjX2cv&p*c^B7 zJ^Gfx-Ie|?r@CtNkEK?rGCaR<`qLSR&tF4bLFe^OcH{d^V9qP^-cHQA<2dETI} zcgt|1Q}o@>O#o}@9hqnm5Gcfq>W1%m>m^2Pl3X2{$)6{M+@+ zeDFMV;6wD=h94|`z-;<}wQvwqJ(&wO!w2XA%i;ru!#vCZWFC~j&0*%j@6<2e9O9F@ zii0fk{?+_D#P=EGwuS@A|2Axj{vXk|r24JI|I3QX^8H7{_bUybI(<|ec!IuPeE*g7 zebeCx=K~pm{>C}!WQOH%d8F^l>2xL&(APMnoqq7DorXzoP{<5B!qk1?_Eh^Ax@WLU z+bv*(_0@_A*O2uk?{~9WT6JKEmC1?@E9;$pYxJuIo532e0Sx86ka!Tvdr--6gI@wx zr!J6wv8rC;=Y*BX!jcclGdB?bxHSFY7j!E|cP8_LLb|(u8Tw3b_d$y|AajFks523! zqgt1~APMurMldGzU>W$+i{l5wXZQk1;3ejSU(j!lcg@s;i^v1w4~`-atc0EM1;@df z^n;QI3Nat92{SPlCYYg+y)s=z?*aMM1@V$y;e1Plfru)F?zs}47=2G2v;CTT3p9>qI|7Y|qrhX~$ z|1+vfM*m3cdz9k&k<*jTkp97`pw6N5V!Hgva4^%o+OP>OkIegulkFd)b0(*avld2j zikQ0p7^)ZJd4zq{mN`!a`%il-ddJ7-3x!v#XVyn_o@LFo=D?;_n92KjtoYXZVEKM` z`yGv*d;GSrI?v5vC|{Sn2Vr{0|C1Lg@?1l&_lv@6{HaS_P=$OTzEMT$LdgeZ=?|m8 z68JEE z8h()Y!h7)pr4Cr=2I-w}7+dF2Y06{?5FCu0oZ{2{|$YM@cqmDHy!#*{rAgRV)Va@?-zsTeNGv58lC4d z?->vK@wJD-a7QLU%nO+F-9z8hxP0RGf3Wj89pN@Ru9F}3V7eC-7NFZ(jP5_I%*N+G zY+bV+qx(o}v^5G=vr1SVOlAEHeu(}RnYR96blm56hSl{xza0$a=Ph6u@5BFn4?@k) zH~Zya4eG-XSPfUsf|ZHF>0xQ{gX$>QP*exweNe(*MRz-RP3=%&)Q;Zm~s0XT|zfcQb}=>tZ<%JhM4 zq3t#?dqIg&Rq^~m#qpBD8|s0}JIdT=tMP$ncXYh{Kpt(UJddLeTm?Jf>WqWc>FPQ|kE|XFlevY>Jm|AZWah!QRD}Bxop-67?k+f+>7L91 z`>F;w27JHxKapTT>Oa~4ONIX8|9t*W|LaZ{oB_ULr#KTKd?+We8U?!&?JL1*`27i> z#hh2>eerO4XTw`|9wxpr*Zs}E!pFB)o4P+OdmY2j{k|35&I}h@JFFw<-NtHfwSkV6 z#YzId1>XxkWb{Ai4>bB6_WQvaWYu0U40eMx+0K;rpcXE?)CaZr+UlC0@A$7i-0TWB_D`yT%3I(=?@Fx+FyYlaX|dy+`68>6lUTp9RpL+7j}j5 z*y^eSqcF`a0{^8R%nWaMZ_S+GfOpUMgUh_r#upg#Umob}Ei(N;P1F-#r~v(7I828x zTogv;E0%unDSkk7c!oOQIl69OE-d>2Q`ifU{g6NC>SZoild8Tu%*Q@Z9hj2s&Vul( zO5vr0x77>d1ME@zm>^30AMXw^`ZvZgKo_OlsIUP2-!XJff&SwEesmU^`tJ(9zv#co zDaIx!`3$vX->-vn-}t^2ad~ClpPQ||i|8DKy-w--&)eCY`f!~6o_|H0vgg_N&^x|e z-tGx6Szm|%^pVzTYa4opTMeyxFpHJkiV9x_Uku)C^8ZnP7&=vB>tZMj)hEpRP!mdA zsKw9aJ*cgZn!Hd)AM%^?^F>`_w_yQl%Z@qU( z--1)w7m_^C`@epm0qPCrxj6H|<}e%mpv;G2vnMG1;48PNnGar~4tRr(+uWpPE-=ge zjl+mPf*(8!)?>Rz>cB#5cZeUHmOfDWfS)RZ*$cjl4;+Q(ed@5;2c4^?;2g{M-`wm0 zg)8mGGWthxPoi^jb=l1S-t+xS|98phWa9sNr-+&Rk9Fd!Vd&kK?T)grEc>0YU{c-VR?K4i326*5C2yW^fLQ}5(jqk^W1EA%e)|yE^qb+ zlI#4YFN{moR)e1hk+t)|f2ar3z)S24{6@!}_`{FjJnyK<14HQL(V5-*v z1{1|)K9rbl&V?V{(xxB0>Ds0a*vo#H_yG&>gZ9Be?j5rq)QEY2%!P|F-E9Ul(g(;q zAQJ9gcK8q3{lyBH zIqx3piS--32Uyd11Mp|9@>VGr#|pAuq5IX~-NAEURrH;JKA}|8<6$j*-X8<&5>-dQ za5xw?;OFulG}LEJeb7*!^jn#qA2Gf`IPZb@Ms?{Mr9Y@epCEN%4eA2fFR4sEkT_75 zy6_$PNq=|;=BHZ|pHSj}?2%++e`GRD!yaKzn24%P>cQw_?c(qQ^QJeFDN?upfV47s(!n1;8A?Q8|b`PEigXdAl1RG z$#Vl0!o*nee{A;>I;X(@ll{N<&QetYULgO+glpLIm-s*OKmD7de<_}ev*#tge+H+w za{`^e*cHrv|5jA5&T|*GI#WW2zV8V7zp-rN_itg!Cv)B&%z0+OLe%{sFbZFP1iGIk z`cH<{`BR%_^t$9vg>{*>O@j4tS;oPJa3pNZ&xgP!`jX$<@Vwv2@U*E98}s$m=D7jy zK{;3tA4%%M+SG^HU=8|2i363$&OgwtH1k982MUv=Wq$1Iw*GdQhd3}7X2K^P43jg> zZ3*MBKPGzvzrBRUAACwZn3(5t-gA=&HscT9MAzxw0Xh~rC-A@dfaHMzJQpJm$b2X( z^TCoZ2GyL*2cNqkrVcpETtNJQ_4om2;CQBc;st!y8^#A%u9ms;(R--s#^wNjZmPK1123%NyVubSUv^J+rr3&j_B=lyS9e2aQe^1wcP z0ofN=#J-65Lc^F7%Y2|U{lExViGH9Bw8;Zc0CNy;rMs?s7On^>LfQ=BljO z11ZXs?>2g;X8tSZe?B>D%>KtE{Ga$duVuSe`u`FC)ql;LJ2(Qox9oe!_n-E^@Bc0O zk3#P?=r8mBHn_bq@6BQNxA&m?Gb^WE9j>JBmw8V+YnU|_I#zzmfuDo_4Zel$2ZL7y zkAQX2b0K;(VEb0s1b1ydY|iPNIj|Lfsxx34o+rY#{B?N`+VS@fGQ8<`H$T5(e8kq| zk$OD0;611So6B-4e1TtHJd+0^@CPLiobsNS^Cau=14ro{ow!nfOKY0a1r}KG8Y<19WWa;ivJVfX8?ElP#U!6@jg#7!Qe&*cQdaAwi z=sb%4Z!~Q2U;ST<`Y(pjzYk6@@0(rTeE)0g)JFf-eE*_rZP8w5)uV4L=6I4!()*`-4{m4}%RkeX-o=^vJNKj_{Z9+?H+J#jpdE_n{M%xX@WY zHSa+e{n*q8U3f40o1fn{{!u65g3J@z^BzcD*qXkfIBbTW7z`VtiulE~$p_*SRwGNl zK)-VIhtd}oVUJ`N)Wm@WFc)z^{J{*wfz~iF)w|?@XjE?&eCI{>WpC&@bE5a?xtsmr zYj7TWgEA)`Ocb99n|afXFIa{>0qF;GlFemLBqqLKTKJD!(D(t;58g-5HOvJL!clzH zi(o720I35@Q{6X#S=b9L27}yeUIutay*GW}4qU#S=skrhPtF5%WDa1#@@)A%NAE1^ zrCJPsIXiF&=x3S#rG%U4_AjIJSSN+?|5`gwO#fek{x3E^Pe=WK8l6AbmCT<1diMNe z?$g%3YvO-Sd#E|r_0-B^eBb57fBF8~SR>5$Z&?M+_x~yQjrsof^Zkqd&Czo$I<)2# z#yZ%ZYHAJa#I$7|HNIeH_JxM<97;9U3~KU# z%m?# zZvRx+j&oksVHr+!#)lc%?mv&--|T8Q!OV&6jHdqYWIrJj;HR?XCH3EPOD2EhA?m-k z=-(doCI2g{i1B?t2Y(2@jqV4@|07{L^xT3Do!Gt>cH>mmX4sSMn~kuK{%qcleo*2> zf2u8c4+iqJNnRMJ-}qzU0Nw}52mOg3(kJ#IPl#XCgZDtkTt9)o%ckvPW7B#-J}0U+A6p%j}I^ zXMZ#T9e1%md;-qHAC`V_Al1C|gH4zdw}U0v8?OXqK9mPW#@&w#AG@yE4>-(x_&mBU zWXdo5LH(HWN*!32I-mm#aN4&LOpG5WeZVW~z?kray5gQi@5O4qI~?}o9B46En^Rt2 z(OIdVY72~w+t(gGb|$K9aGz6;%78f@r~BmGM;E5OGXJUI>@nwkva$DZ1)U=?_n!*) z+S$#%XAk?8nfrS5|I+`xu?pIa;6^I~2Z%p+YpSXL16FCP0M9>yzZ>8GSn!tMap>O_ zop+-{Pqr?FeQ{TJ!GWC0*Z~JqUCDbf6t0KE`1uMroWD=W?QYQ}Qy^%iQPvS-& zIE1($bA$oB2T~98p^qpFyVEy%uoG@gI@pSQAoXBFw!2@UV@>ABGAEGzV#x!=P-{N) z>E4FGoSZLe0n_3Sm4or=3v<3(APwX08OFy^`j&dKFISgaQ2LAsXc!Ir;hH$X`&CUV~+Y8LO?r&BZyAAs9qWX^v`&jd> zh3H-c_ooDmiu?B*-OmK?4W0)3qUS;W{0HjDfkSYpjuw#T5jsX-9~@0}CGW*pxDAfy z=kgv*;O~<$CWm1;;(+u6g*p8_8Y=cjI>4;>#MNMOqPGiUvfYsseq?`8 ze8HR4gEAl5!`|3VIG^*Rv*94Jd0!~|LQ)45VLl*!Kn70zrGc_1@&i5Z{daC~59h}B z@;sgWfH|-$`$2tR75o74gLAue%wAAbH;b7E-Q`?}oD0~Yc5sqJ_J9YQebBaa`|)`$ zsgk%S&^s-AfU*bh(OJd`5!w6g$jKml3@5+Y{~W|ApH@8AbIzH)f6d;f?ENNiTCxd3 z-C+CtEB^eM|Kx_{?e$~=d*p5;B5$=@gS!c6{si_OoY2P7X% z*Fgd452g@LBo0jEJ!k{RP-oPJ!}V>mM=*%5Q|iH<%$btIPJE@32U=1WK7sY=4^PAD z#DVp&G;u(Dp#p6Ac87AVK;{GK>Ea5&MC^}=FBqBWzU&J<#~-{8&rlD_zSw%|!9{T5 zfA>nr-l)_8RmcOyq2)C-bAfocJ5hLkMILyJzNeTE9)Zi44=;v;*b|pJus*jwG=llu zmgamwBBuRmcz(`a(7)(>L>*(3T=qf6vq3C%Ky7m#xQfc?UPkYnoC6sHgVbhK65eDF z@0O&qH{|2er5juw_Vif1Q*%~91qsB51I4b$vEFP z0^P5metJ07+H37b_gc(v{hCC+lQ^3vfD9HhG?{QwPq% zc{)wtBwV1=29Cgm{9N9HMf`nR4U+~|8zu}$K3Je*2gE;`%d}qNz%2dE^aay+4;u13 zf$S`O;VAk}9}dP>mORi4*Crb5#2o1*I<{b+;1aAy_b$Fr72?2bSOOPE<^w+2TlPhA zFx3-ZFg5CBfpN&<(cm}l6K|ZHCwxH0;ao0rBAE{^qN|rWU@%{ETiB3&p>nVYQ{G%K zEm1u-{OK0b|DfkB^1x}hm2DrH3r^tF*GSlo`yyJxGHwsE7n0E}Va^AAQL#PQ3%$f% zkemxyt>&3~L58Z9rVk7!+TTZStv=%vQ^#`Js~UVl9VkBFKB~SW=sw*^qXxiE%z>F5 zvj4NmocGT{AFu z)?Z@yHuxDCK=er$xXz#ZJe|>Sk{(AfhQ;c9pquF+Y|d$3k#4(#E1 ztj~%c9<+e7s1L*+nvAbd2#&^o5?^2leWLUO zz441=UfhZOBJqWqvuC^y)*%kae4rvO&Y!Rd+dbk7I{3s=2V|y-lR6+N-MrKR(Q$QU zU+iDz#j-biiE{*-;1=pZsRJgnKQ4YiXSV&S!75~R2L{vKCxY=fH}DpHpVJRqf=4+w zxDhVk>z)Ana$Z#Gz?z);s0bZS{p5l%IrS@hfe)AqA4C6LYP~rZI9c^D`yg$p1LQnF z3F?65Ftxg1&Vj#kW~k&mpJoqS_P~}nxy>FxKlZ?64ph@QV0<8(?*Aw{$ENxl22a~L zH~~N$x8D#6qz;(E4G+BkRw1+ZyOTQb0ebhQ4jcqSr~|XXNY?k@^XR`+=M3EC&wZ87 z6SxQ0Y0Ers)K1_w&zrRh+<;qoz67^v+q?(cb>6^Xp112VSgGi>kuB><=lJj(K4cn1FL-QU^rh767ROo^YN>>VRY3adUoX zDfbHW;(0JtU2WKyz0rKI2z$dRVS1|jFX;H))y5CH&U{GrgEo-|$Z;WK$pe4DR-6}> zy@29ueM%jenr=THe5*dWSJD5JI=}{r^aCT!y)eBw_45OrYtZ#?gSolwr2~wlR+>KG z7W1Hc=)H-reij_fy$>~EGrB+70|}uHxQx!p$^KK|W9oofa4vN~T3E~8zzr|tLtNm7 z@B(#!^Z^s70%Q(Q-KvihAalS()?@VFq;(*IKlg1qpW!ZDFz|%uy}D4~5!|ms%zJT= z=bJnq;;+klaEQNO^1>nQ1@^;(yf<6me%_~La1Zfh8r;Da@1Jlp??G3%mU>b0z;gNp znG?(>N-H=WmBbesCtVvHf_o$VU{B(J)B)|N2c!;Ygg-C|R%gqz8n^^+gw#TOPoI0{qWC+L1#T{d;#7B$<< zgT`<#gv#VSNuTP1FeW3{1Bb9 zaoT$^3}O$o1>BAcD0N^bx-x)cubcGyyW?$E*p3bPeXY>&hYd5@T@Ln-h*?xgsB(K>LP(-=C2nBNZ)u$ zy8-c!j_cf}FF2$#1xE9{mv|s~UhD^n+tjOMJn> z?3rDJ-H8KRVH^5_88DpaExvFS_DSo*V)(>Gp<>%N6U>6EC;Ng)=?kBrXEfaXUH54ypgfXoFqvnTQ= z9Lv^+oD*tAKOlZ!F;q?uQ*ioQ_JUrM2iC#kdm0Z_WAt`keok^S?fRfb0P$;Om$3Usu@zDG0~11r!OE zu_tl@NcI8p*}?E2TY#t0eXupf?0=Uc4EP`iw4AEMm?S2TrGIdy9T!hy&N)K;nS-0o`!(=fM`Zxw0=-2lbl5 z3S{xpun>EMIbbl;y;v|kec=mqOu*@{b1;Z)FPRJ6!yg<6_pmR}9?s+xcxBjwy+I4s z#vhIkHPb%X6HQ2$Cw|Zi_Qk{xI?kTJSh$cV-wyWS7O3(tjPpX-VIKMc*$aux_NSZ= z{EPjNUT_n>umeXj{rMZ68*wiPyQd-fIQ=L0LBv<9=@6;k*b6+1?t94tBjHr?fb0Ww z;5VS;w0}qEE*$1r%*K+DRF>GOPwzs2uM!T+E8Q!&`+W(;UTx*k=2Q;*r zne!jFbiKe&{=Dz#`iA#)!@zf*AL>Sd&+svn_aTCxOPq+%;U*qL=sJNrJU`+6kbLln z_u(kKPn_5e?+_QnFTBBfAbH?2@4*mwmU^=zJVt+62kygnkomwi{KQ;v4L)*0xQICL z3H_!K2X4dB)B^`#f86}Vuru?5;jk&^3);Xi_Q+%|P=>Eq<^uV+6)GXj$-GeZMN`q$ z$+>~p`X!TT@e8k*`^7GJyNw^TmVE*7gT~+s_^=)Ipqv+|Ks_jPp=@3WeFFxu{ktvk@16D;nQGyCCkU&JN!{+B)R(eSuhX!gS9u^;jso&R7z zQ2fA(^aJ7tX69UYcKFp9VeWyu=u}g4(0hfGO4We_*$Ye#>u~GKb#!()1uzT7bt>Qt z$zE7$NBp2+xIwqjy%=-BPVk47-Q4%Ghi%X`ya#=)p=KZGscspFoS*rJZe#dLw+%$% z`Cr{G@CzN@!moyH%zN;TzyF1KZWee5-|${Y9C*$9a0G zQ8>?ws0Rzf!CrrJUZ4@%-?AqfLOm#TKnhL)?uYO21?IuC%!#EASni%Nb-+OO1f&kA z&AD-@11$E0qz;J6DNyl)?%)f_`QR;_6H5R`vjrx8P-9L3i64}Yd!Y)z_-Y=L0*M1H zxgkp8fUVlYsoV#U8@A)?{|B8*u?;4EKswyO&hVXWaUxL81O4KE_&)3l+zq`N>x?3PRdVkj41JU3&-7^ps{($mc{L(!FztQ72e_h^#-@0qyE&QcB z1fIbky0z&OzUijMH~36^5dZK!`9ku*YwCyj@Ne?M82E@jLh69q^qEcI6?_Nr15V>7 zy6_-%VJf(tIPe?&)({7z4qQNAAoJnL_yg>5`i-78d!(`_mVr~CvL6tiDbHf~4S!JPLN}=g#ShxS)|bqMW-#rMI-m!0BB=vv zc(qL(U~#XM)B!O$1tfLAW9q?Sa36c)vL7~sdayX`gfGB<7W2X)-WPOE>qhf7!S|dO zZ3|DSX*hp07ugV1&UFz3PIIwgq&?8VqgOdc3+pSE|QdvVSM$a#=oRyteeLi=z9rokv|*~CWY zXt?XKU`(d1F=1>d??oJb9tFlF+sbzpejqPM9q>vQ2=s+d=^tCbd*lPD1FzvH2H+Wd5b4ZyFZzm2sN5@t4 z1?S;>{DIAIB31l!IFxN~sRO&SSKI)$WL_k5p*r|O;s=$dtBVc`vN!NII_AdRIR#VE z-HRU-lkRR5d`&$le$YAghGZ_Z4u3Ehj$`UC=LXwQB6Fdu z+$Sb}z$TaXT^nOM?I0Npd9+ZA?I#rvtY1gB5r^hJF1P0H!)crZDP15-kIA5!tx}(jRH+gA}|U5(kp;K1hF%m|I?Mzyw5N=?i1?9_)b8xD8V3fZx=YQ{Y$nh5_)c z_5-cqb9|-h@Bw{dL3o|*?o9A3E`CgSh&Ui~p{?8sb{Vc@uV@FH!~A#-9M9ZvARNR# zVKdkTpSTQc#wp-jFbsEB{Gc-UL;s?q&y?pP%*OqL8(|V$-ia^@TVGw_6XwNI2OOm@ zlsaG;dqXMUVAPd5paJ{CH(`FZKg176%ogwr_zHhe&I=xQZ}WGEPqfT)VGqs^Cxn%7 zf8@Tf%jBG zN*-9tRzP0(C+CA-p>qSK0-Im}f4B!s$f+>#1#fU4Obj>yS7151SK!vyk}wADu$&9Z zfUBAaT{E+Fmk?%!@;+qaPd6^i&gl$!53&^{ zkUro5eZdX5g)VL{T+aM>A)LjzqhW9iuCCO9{n_@c1Uupr%Q@o4Y?`-i0txXpcYQU~niG^qFiv*eaw*qwRt1N5xMJ)?(U zZZB9bgwebtdLX>#zBhZ~+nE!E@I0O=u>20A)4_eJ zqk99rr=Ys*2e#q7pxh54TcL73Fd4Uj$$scdr;hp)9&xg$l5n>3+Vlh6m=nu>P$jm* zW;y)OZO#l!0~4WzM+pr7M8vs53Zc}13Abi7hz`Jg99)vd0{O~&MEI%Fag^e;s?d_ z%LY2Z-#WkP13uv!73cXSbA_Dn5&dBTc%3*PbHUSWc}pK~fH-gvZla1?2A4876hCk} z)x6Y!BXM2|ogDqfP`oc`mqAwI*Fq-N{Wyt%< z{gCzHW+$eS^Pyun9rOUbo8byAgN2C$?O_V;1@qxk>VY7*fcqilqI!M)6nSHlgs`V-({_DaPMoJuyAI&c{CqC&7Iw*h2;tvO#58P;L@U;Lo5^o2)Z zfZKv)Pc$3To)It^r$D3*h|1Jg>VOx-0UMsi^_RK8a`p$`q2pk_^2@M3rvWy@09zoF zVM1<+?gF24DzF+n#5R}(XL2e?eBn-P16)Jz(rkrKglX6cmHmJ>YKa>i9_Lng$pdq^ zH%xrNF5C(#{XjW&lnzn$2gjNF!9EZNy7PRNIFJu6;k@uS^zDZ~bO6?*9+3Hf?Sz{> z!PrhPH-buC805&kKqELW))toMYf6Kj6=7;vnJ!!2gDRZTl=q+tw>L;$s7%(Cd{Bw^ zLh6C?vaJux@D+YQr;@~lr?7}W#mtWi_@hi6==lQzoB4UL-_^_ova`J*eqef3`U58C z)`x~LE>m3D4~b0Hw&54zKyvt!df+FzJ)|#q46or6N*{2Nd4Zf8+RfZ>DqM%F*BdTi zx+8VqB(}a~E;y8VQ8w6}tR4%>tswuPV<>&$X;^}J;aaHlM>bDn@BE&b3(4(3QU^rR zo6KC`5nG_Cc;3&v@EbbLW?pz3c1LB|52%ViG#BQ^{p$;(;QoZezc^3M%`^CgbG#IA z6!!_eK<7r>C%yvu?kAH6;&3~(_<|3)Kl(59-cA=V9ggL8s8HCH?Vv<3AFl8P^o~y) zm;fU&bwQ z^>{X`+Khv_xD8PHz>IY5O<)Stl0GmVaX|XO$bQCv^nsu03nD?e z1>_m}J-{bC2d^+M*aD9;H=GG~QqA>;tJxTALC2ksXv1<&FSWrj=eha$l~_(S{AyBhaNN*>7W-ZFcF-`Ng* zkIt8f0~_HA_QqsB)Q|0eJg^4c;6Lb`6ZKca-|UUGgV(t?#DeR&C-^-&kKmS=U9hn; z$=nNEh+Bdx@toYzj+_^Xuwy#Jf{+$WSu>+!E2=Ab4_f=z18EJf1X7uwUodf?CGUmQ z11*TYk_Va+CnOIvA}&ZB5YE>qzECaVfz*N3s4K+}sz7v>K0r?SFM%QS2@{~^ly7gC z$FFPV0hx&dm3dA<9PnX0KW9Mtz{q}zKveh{e?aB||KJl|g7?@vmOkJT`=#^X5%!CR zz-{akwt_3E>ZJ~x&AiBgV>k_-6!yg@{)~QY_^PE2tcR+*V0rq&xv&7+Us4C;#2*qr zAQf?-43t~LWk28zrvl@^vuuI9LdTWtkBKilgnOr@AFS^M^aL32(&|ny0a?Eae8%ap zV7Q-oVO%(sul_o^x8s%=xi_jfw}e!M$+;ywE__KGIECJanHP?LGpGkj!w%dZ7!8(W zOGtcy)Z7v$=SALfexL$8g+CAuxgH|*lMDs{m!SeCDJ5-jR>3iN{k>cW;VFL9tM%uF1}4^yIAMku!g$AFRi zc!AgGCtJQU5BQr~Aojr9?3c=3zrP)Nbzlqj$q&LX`obl!G;W{N0UEbQ>VRy-fhtgbdxU~f^-^Wtc_=H=6#UI>DHSh*~ zr*Uduc=aRRa*`jb79Bk&FTWUJs~_DZD>xX!$&J3NU`91eHW-HRW% z2A5arz`0EOV!$!%4LnE3zI6F#VLQ4!@q@zI8<+|!vNs_6A%*aX>%+Wk0TqL3ITe%z z#?ecRFZ_=EA?XLtGX**WR}lx+!lAgp<6wQ}MIE8fcCh4uc;4TpABb?bn0?{B!~yYz zrce*ef^Db=>cFD(1u0-McbV}8{!yJwJ$R6AK+X+K$0w9?BkidM#UCum*7$swhON^+!h3WY%#`L4?8m9@ORxv^;eObOesK+K zNgNO#s3CD+Fbty}Xb&rrwZ#W2PG3+I2B_Y0z&u26nFnU%R>05bmIOCP`anGSz;XDE zZEu+eyuv4*0w3TLOCN9rpSTe`hEH4?Zs-1i+;BO4VO%(!dhj(m4rg!RGVDQg7eA;a zU$@MKYOyyk5SC?cK2Wd>e>cs^xZtn{fp+9L25S(ih5a3zK`p^Kp7yeqT@m6>8$ZGqy&g9yo|!EI#pU?vs+e zk?!0gA^W2%xUDA`{g!i^V{W*D+y5mFEaSb9Jg}6lT*(8Ah!0W+%;(gm^nx~oM~DwFoPOal97H}4AE-CJf%rh3i32lWE8@UV*pPal0}P`ts0}M{ z%C9&q#_cb;q0g<5;sfNOivNag>2Px%!9;w;(g#Lm%WEV2f=1F|RF1a*hQ8gzS72bARY@T$gqc!#?11A1@AB@%yNBHJTl;TE>9ZS>pB_MOCm&D`cE z^}r_FSE&a#u$3!);aa9~;tQwvDd5)d7JXqAc$#Ui2X|8s%3OFg_mh4_$2puY zlR9t=`{ajVKej(s!1i?eV_^es50^Ti3e%rju!z28&I?#xtfnGZZ>pZqa;@5Uck3Ma88(gMns zKz3NfJ#O|zlDd;zIY0J-xuNU}9OAc!IB+JvS4QT=oz-EpH&j+}@_^?Is-Y?ezpzD~ z7+z*-co*H*a+}O5xSy>ng?{_Fr9tArK5lQ4Jg}GdAq(6^e2_X|2U}TE2X5g#5dAk0 z4@Cdf)QvJ9Tuz<%37r;F7sxzlHq*MRa0+qY5FCR_>)}v*g4wVSUHdTD1)r!hY{e9> z9&ErZaN+}oGB*l_W%+u=2MVDc{Eco7^`Q6wS*Zsvz?5uxZHIB_>gAl!FU}hcgKs#G z-VQ!y>r?#TtLzWugGZScN*}P5`^bKw+cM6TNF6vGx9=nzPG7hV_F$iU3T(yRfYbqX z*&k{ED=;rA0SnOe<$yUg8*MNJQ-Ig#84VX$_JyBvu4F4b#JLjL7oE#?nB;-(!~xkC ztU??p1hW$d(!yW#1@e2vuJL;Z_QAEBFCGAgQU%EQv3hg^QJ~{)FnfbB+&=C|bid2~ zKqa`1ts(J;#?lo?9B9V0Na}$Q>cW;VnX055_?q*D;uD_4FFXNHach^0ey7;JvfxQ> z`<8m}IKKr#>VTtcV~8(si1$GB-$y(UUw9XJLHfXL-0CCxZ(vF*`me&J6(4X3{i5hU zmpCB$Po*9Z{m0@PivB}TOZ4wU)z$@e#xE8hxFywlX&6pDXv1pw#3^BE>cL2`0Ji`= zN55chi@yXj@!RBf!KD5d(+9@zBbZQ1U2vJoQhcKWrVqHwyiodp^UMjP57>`CD1E>N z{6U!uFQm#p2PaYGi61nWEI$i&CCU$g&G^cj!2fELvHFcqWh8?G_GXC#rH zYVMKw#a4*iBl8z=K;}bR*&mTSFrNL9=CBoUK;{F*hyyucO7DUf3%=pLDe;F-FfW)1 z=QACUdnCHMzl}dw$vtDvk!Nvdx=Ydf8>dLyz)RdSCFjUi(jQ737{orI)B|UF|TNP4rpWqYjnRtT!SGm>KL%%C*VM`vk?B_6bz(qe(zHB_7 z(ii;?Qy+-_vaK!p@1#Ebj6R#$))4*I5(h;8rPKp52bf2cKLwx!*G2z`CfH8dj!?ivo)i#l;5-aO(3a%*B?M%mdT$H7|t;{g zjN;!i^MH@c3+wUoXWSB56yCrel)ZqHY=250u!}D575c5_>%Ic#psx5qW9SPPz<&Hz zxnZy)u1`DIhqm^e@!)+G*j(8V8+eWBRic2DjTeB=%_`y#uzceXpv6S;R>_61sz1!RA`2;1Wa zVRCnfI}E;n|RAG{7-viW|Pol`%{p=|q&hjIM}yh)M|&Y5|@zxabCd4511$N?|m3rHVu7+*m4 z1Gi8QN*%b2`-cv|Y4n9M7aD=bS;A9f=S6oHj+12Vy^Yzsz#Ke$Ck>cOkr zA~7DWWm_Z^4rPx>`oemgB9px#NRCZdi&_V$u(KWc?55mx=Abn=qjsZstQjxIIYnzzz1uhQiIn zftGMAaiBbGK^({ni!dEZ0F!&WOg;FT{ehL}eVlv8+Qa$$Rv8!e;I|5VM(4`7LvpWd zHg~iu_X_^x-dTwQ*HjME7p$W@yo=7m*&bL98><=STwwv#Mit@t9k;fL{%^UhN9w@W zya%HHOWp&~|2d~LMgIs+>x%vlsS_ps-=RJf{cjKlME^_p29p2JaC%GXza#VoQvd%S zvd#iZs-tPxi@OAOW?=^1xqe4>AvnR^-JL+Npuxi;!GgOc1a~KF@L<71fMCIc27<%> zPc@tG`_B2#drqGB&g^oxZr$##uBxuuO}8-7|7Pq#ng3VeFBbhT#XltapUpZT`k%}? zAaTIaSZ|{LL3nX&*pql+Uf7=MKPg~ix=TMrZ#7s4F2S;_1L6k?u&Y}Ii<0dp@xVOH z>VshhvOZ-Wm;wNHUM%~-zgPz(9&nES74Oj7A@W9U!tL0Dzrvr$1{Z(O9IXAB za6H+7Vh0RiwQmo5;Qgx#TjKpOVGVZw+2QA8hrUODerJVq1Lk(7sQ6GSXP{aK9+O8V zexYBP2P96sjCnxvg@!N>1Ytww0m&CJ?6b-qOldE+e?i~ZIYlV-1a?qwpc1 zSZDmjf1vNu){iQWJcrfK>csUks!N*iD0PS4qUWXL6CHqqi5^de^{Fx``2+9Ws=)yI zdrS8Z(f=#ngDCidYVV@|XH@kR{Xe2=gXsT0>w)P17W07E|5vdKMgJGE2W0@C2UQcNc_O{SqCn|Dy#zsVM*2j@dKHx12dr4eXjDtvb#4_JSY{`U3ETx%YMLu z4_OCtz(0u-#iO_1h!fp~zhDoZgd5rIi9cv5*8Y4r9cynC9K$Jbu><-u+t-1eIbRln zjforQgO%C+C50if0`8;7Le5+jAId^hQ1S#4vkMfz&<*MlOPqKY^FT{Doq3=v?7=)x z2v#OKkO~&CciU25{w>+#i{M$#o69+p)tn~v!%@VIUZCe@)&b=wcC7E!Jdn<6V@dwd z9pZ=C;a>cOH_`Vj`VXvuy_gLK!kpOiOGEK7mX*tGfFAD|qa0y!bF;GymJUt`y$>^A zhigXv63zGFnbBvX<6{m+2V+Xb#K&9+rU~cax|NeBbP8SwR1DXM5kHYPe4Ou7go;Q1 z#`Ts!*Kj|6f0>geDD!wR{6YtLPVLML=E`C`=fG)ax)C4K-Dn?Gw#Y~OGb2yr^=uIl z@AO2GlVQgwPu^tdA|f&rE1hd-nuv%r#u?AztPv4Iyc}`J9T9QG8|xVc-*{Jhf_Wk$ zmU&xw)^q*ZyGAjaZ>=XKpJ(%}QQxQZ&GB60`;l(B;CSR5<_r(ahYQSeP91p4h;_b% zUzl&51MrdiS*U-Q=M>x$dJDUUOGO_;o|bO)P&2sRUJ+amGX%?pZRF+M2=7MzF9R#X zuelx^9L2Zzp+Z0MX?)E5aFLiiLhCoPT~vI`#K3u{wec~gmN6!>NRA?D*I5U=E5L`1wa?-YEUGa_Ouat=j~WWHF>I(X7MM#;4?fg-oa zS>AWf`KEL5G-y+`y7<^e^&@{zd-$Fgedf z-j9ZyKalw^E})0r!0gno=m~?IhdT-H8Pn8zP{n-g9N{@kH7mIVcn;SCBSWv@FsohQ zA@thWf}N26gu6O)1wL@LhbACtoBTyNlWk^eR0;yN7ad+Qk{?-9@8ll=44b4!cgv^;YDO7#|b&$E(e(+)Y` zI~jrxxGv2+&;o9@HoIr|{D9fOearPqGuEvqa$fj_@tWb3bFrsQ&q$G2ZVMDUvT^j);gE3G&TI(EkPCa=KyvYCFJnBwH{R*$luPY z7q|t>+ks#oNlu z7$0-WXyAxlwA$$9bb~p}E6xQt%k1fv=RI&32S3Bt){8(b&cp5nd#4^B6Xm^< zKN|fHNYL+e^eXb-_pVd=eC3^^^epq*H9mI|YQw{#pYoANJ5i?FXwT?5wA^#lC*3_q3}Ze+A>7E&I6x5)JnBiUs6-Ukr!7Jev@KSJh^gCENv@)EU@8_9R zK!}okm}MW~Jo1si9j6v{NgDT_bp-hvyY20-k-xb2ef~^J{#;7#ZVB)A#)S8vl217y8`DyYMm3Q>}lq>GB$n{3o4Mb~5z;(5Yf)fy3S8j^t-yi#j*; zk1^5SH~C8M(Wk8M@4az~amX$2LFEt@5I5OsJDWM6zpn}sA?>v`={jE9Uyf4c$lS2I#N5y(5uXyr74 z5#~up*2z(fgA&MH#fl0XhdG>~!A8j6tkiu?oJ5cVMRL$H;S|4^`LcoE~Js5RD{ zz(aZA-Kw&YJY?Nzwl=8WJdmttZy=}pG?quY{GNMiaa9k z$%J)K>_J)QyvQ%_gV=kr{x|U5^NfO%eQ6_QJ?!t_ZgxTcasJ2VBA7{wvL3^F`XMF% zU_GTR`Q}gcPPW7)9OJqg2mOqY6OG)DjqT1_*wbVuirks3hwd!6+b$W5Leh4QgI&yX zbF-=WFITX1wAh2`f+s__d4HM;)_%AS4?;g@;pTDx~v2Bl>Ey~ z$#Y)ozh_Q_AN|>^D{zF?$0~%}sr7T#Ja{T$J~S8yQ+W<`438smp?k(WXEJQYdhih@ zwT`;|MSg3gS`YI$sY7wdU&wtC8pZqnG7!Z&h~F`=CM5P$MaQ(upkK$yV>M*_Z*ivyly%YH!FwRBpWX$if{+~kcG7dz3dCv>@ z)~oM_``&og@p%^H7WtF&T;%6=7^m%e$X8ACT8of-n$`*pVy7X$m(O2n2dw^Zp6<0D zG7fUEE=s&A+Q{f6McxC(K(#KGFjKpCkmow1H_w`XMT>Z!%P z8H!x8u8aJyy>pe^|IG)ntPe6iHh5dB_amimwHoJre3>HWA+OlKwG`JY`G<3UJILR$ z$87EVjeOS`-@A}^oYv0D154>=tS?~|V~UywlNvqMJWvPuU+^5Z8||EC{C*DeD)Rv2 z$n5V{VqAB#Y6MOp{}OwS+W9%&)pAPH!$aVHe5yF?U6D`L zJ&`xL@6&$9%lj|#y!NhD^PW79Py3x%Pfb3T{hoYZhWEcC{BNG@jUT5ef451#*8u*W zAB+)pAM_oquVMUS@7tr?w0s{h`q<)k8;jgsk-LuZ)E2+a4eX)veBX}qz`NlOW+%50 z@^`b0zFx zf2ulNte#xcAIcgHTk-xkNB;ZhP2T(ajB|Mo$r;~r-7;Z+V?lYpYx(XdPW3%d?CE>2 z^j?Sg|I>4dRnPB*^KC%l9((C(vY5Z8hgr%IzmjEy?GEr)J%ugfKZnuVmb{aDtOJsl z(2nP@8`cg)grbo*MQClP0P>Eq&ae)|$BegXVe#?%PTr8%gZ12pp_=HuUGQW$1J5CG zAS%?K`%N?78%vQdtu@jZfE^GFHg$>7$INlgS~nRF%k00*l6>FN>-UU8{=EtFo{V?V z|Hg#*&*DA!w9eg2c)!;u{a^96Q}&P8d-7bW@pIkaRqO$=e}1)_s(Rj=?RxHa$ny(z ze#F1$hW`p@f3d>^^*I_ZK2 za*qr23O$ASoCm@F=(`j1e+A?=f)B#&c@B*NbwaXk+@f1q4dlLIE;c&wp7#h2aSx*Z z_0A>h3Ua@&vs)=(9p?Yh$iM7==KoLY`vcws(Z3hDM84F%3yK>P#`g&*>w@eP<>y*? z^QiT)n^#lM?Hk??Z-+`(Q+LL!Lv{K#@>u z^#6IWoKf3~$i8=|*$sWS4SwgYMgL2&f3|ad+|ta-JeThL-A#~R_IEO`#U;p{h4)|N zew8r3@3S7r`+X(hx~DI_n)es`g39jA=sVM)D|Wyi&gsBZSjM@De~5iwU~K3P z??WuJ!vW+U=Vl7a&c9wTZS+uh$SE3(<9%|9?I=DF`O7#9EU8Dc6#YL&{}&v?mOgb& zoYq!W^xvKLe{=5RsbqbValZ^ZQ0$y+3Ge+|)-`$mPhj`T^SI*u^ju2$(kMGm_C+!u z*1`Ufbx`a;*$+H-nyWmP3}g=$>v5Lp1%B%$6z7k6}cVcm-oZL{*muDQm<_}f5&j!z_U-jn59#p zi+HA$NA*vOwhUE2IVrnn)!(#;y6gJsA5h&Rk(jT)%`>mQ2Fcr1Qa=JzK zJIAqK#1C4VC}$h4=ep@bvynTWeI{@Pc5u9*S;#MbFxmh23oHu9!HCew@G3sPPu&B_ zM=;F0#vJ62bR!)(r(MTQ;#yJk6?wZQjFUjZ`##DSh|Gb!W!d*Qa5C4z9^}FN$ar6EwIf2x{>OT1N5gE? zHAORMZWbYfqp!X+jdL#JrXyo zq{cm2R-q=y{WtS|Uzj`VdXCM^X%;)d1jyIzBE>5b@FytraEPM|p4O9s);^%%34N~)7-q4zGQ$8x0=S?*q8}E@n&dKZyLGS6DK9=<5T^C5?ieL1t{l+ZA`#;#*-jf>n$0V#{8=2=i zDLLmVIb~lb4-~Nj^8efoVnc+&Y#Gi*2!j_ zLEf5y!%lTR&tyg!`-yjtD|2B5M$d!X@(fe1} zga3UmpVvuvJ_UTQJ@TCDa=I%W@^7|ka59|y4f3|iBlm(p(oi|%oE;q%la;^!RA^Y( z=DnS58_ExSIp$T&UF2EJf3NZVoY3=d3|z<4$-(C*@b8G<`%d6O_$izhoEDaKU{EM~ zbS%sh$gkpHFYI@gA348r8#*=NDs!Px0edL38?dEs*M0JIb0dF{^-tdaINtkV$Z-Wb zU*vl2{Um=f)4`p4HpI?|T{!62G`93-Cg*=Zo^u_3a+)>Caam)b`>YTzlX6CfLi_h6kOUjp5WV5`X7Ko-3GzPkE1nhr(h9lnHN){u|CE8~khLlh)1*dl7Qy41VPfU_30cW}5eqe}h@v zuJ%nHXjYwBOfI)BhP91#Cz?_gYL8*(oV?hbv9-1l53 zBz~*NaCIV}$RGSNoD1e~XN5AsHGyWz&)Fa_nYdSc%w)V^;_sgnIv1YC|7#lF7M+6Y z44ek}f^jy5b?+4NmvpXJD`dTQ_t-mF|4upe?VOBUT6#3(L4xjY<)+6(KPxM|3reyyw^PW5>`F>c!I7muf;|kFQnSxXe&M@><*`JYkW**=ZH0j`G19*(~iUjH=DAirC$bxy z#CpFJ&fxjU&qpv`QgXeII@GP0{})hoT+Sl}f`da6=Q)X%uOs(4{M53Z+tHb03L@8I z-u{zFv^bD8oDn%9+z}z+V|M+^V07S{@C$w}5cKj>tec@M@>3bKB@t+X#Z_aa)_rIT-*W!4u z<^2}yxGm=P7k;*&?F@G zTlcUTy%hZ7nzuOHI50BvQE*^Xqo&=W!yM@R!RJKYIziuEmV zM#=Bk99+l0pV@vAD9QcDxkp2#x$n}zgYYxhIb0=1{*I#VDcd$8VyZa{i~Q+LnKYAq z-M8Bl5wXd?%d?g^;Ysd4k^BAVt?2m@I=(%gEZjGhZ@cFP*FV@3)&AuRtiKW5H=VuF z-2}&)72NdPznfK^J4)UUs{!|$7T6vB4Mv5t#>|Hw-35;1)8BFmn0fufLSb`WRF@(V z&IRAC{NEC1iR1puxz9lCx3=(}cbMleEa;o+nE@UBl+}UvZ;$@D@-H1R>Ns-FBB^=A z*#bYBS5;iabgl>I@*Mow(KEPj%CI-)5ZvmPcTDcz(p_syoxk2z1;dSs2*o0AKmPs0 z_zOm>`+n#70eE8V;Oe2ds|RFO%Iw&Kd6iyZMiPr+9p@H-5Sr{QD_o8=t6^;|6rQjjUwczp0+sJ`7#sp?!wG<1^wLJGg&UyumxT|5!#z z7ViIwe3sTck1w1!OZsY_aBf&BV8FQG&s{V=xW(H@?N6_H2devupJpESujISrDb0P8 zun#W}AKG)=Q`~2OvDB9HO9zb%P64iq8GAm(o6L*OOzxk``h!dg^z4)gUE{u67>_~Z zPwv#QblEq$FYPwmzq1k4R&)RP=zkRVd++_plb-vm@HX)r@@-ajT3+9u>b^0)pOxHs@mpl${uS&jst$0r;1{7s z+@~YE?R3zKpD8sw&paUe%`QBp3GlKrJoFd$KN-jw{+sK4M!cRMdm&Yzud|T*Kh$se z|0)t6T+H*{!~K){eo*?p?p>*v*LTd*g8R-#KS|*i)Dv5doNuf@o%_gt+Ad25tJFhE z7Tm}ECp$gyWXU-QCnW1YZTCbdGx|>*ILuB4f2sMw*w6m#mD|W!%KZ}=fB08$|2^LB zo`>B3AJ$uW-*)pJcwo@?)H4`LK1v-}i1Ucax&K2mNkV_Bf1Rn^e2QzYSjG z{*#=)f*Nwqbu)yUa(^cQ3 zJ=NdS%oh>4kLxbJ!jZXH7yh!};n9kZDQ#s}_8&RQ0m+A`7)leq#=rm8sTNEI&k*&U z!Tl=)SA_?2|M%|npv+T#ySz1m`wwORDsk-7`d|LE+aYed~P9l4i;OGbameKv;LhO5A2;l$BLVcuXZl~?5i*N6LY z|DOX@Lqoa$TIZbYW&WGuT(#=)cZ~9Hh^tRI3g3E9c`m^6zJENY zq3%nf_J2L7``U{8m!PhNymylWUQgCLJguf^84So%k7oACuXpgz4)a<5!Oy`N6&Zs{td>* z0@z5ar{c{ejgR&X{+;#24QBFp%ny96@+Q7=_F2WyYeOwE>SN(}`x@)l@BChn`7@gP z?=f!Ka^A-=Hrn<0{f%a46^C7p6|t1RW32Pm3iA86qb3*o(-&`_@b>qd=l6554#+(G zJ#`1u^LJ;kb~&5){fAB@o;x|$vKtAQ_ncW)K7M~=)aqip`TbjDb_fBUYBl>^mSp|2~pX37X zUpVx4Xez(Ahpe*>{N9PcmC#MDr#m%lsoQ$K_@$!1dgJZ1zTcJoU)q-<@&mu$g#6iW z`MXnw@`dy9d;J2H!ozv)*+V13l8-{ z@{9kvW*~p~13$mh%BtTkRyuISI|P4YL_~Jhh3CjO-$@pVi_nU6X#c&Gomcuf=q|r2Zw(`#1U_O5dAg#!+4Rpcgb!8%ZA`f z22mLcyPNunP2kUTSsVkea$b51{9xo#=cMwQWmSEp5@r`wcdx1WJr$UEuAHw~3TIK5 z1NcnMbMaB6WURQ}wL?dAx(E2UZ)- zpbF41xWQ^>uZ72`7jy;Qww9`M!XN2Fn1_914*LO_x+TYh@ffMV*4*;RE^|$a%%YWFsfz{Y%eJ<%YRA*KEPUR5PdqZB8}I zd52Qe&F%xMIv-U3oQ9l>lz4d?&P8m2-KnQ^6!xdS)-^ba^OSPFdJQg268SG1) zJXt@cQAN8p+)Ul1q3}G_mDj<4>Bo8%X64+RoTGQmcB=kvJ#&KDgX=!#7IP8&p6Yzk zzjFiK+>@Z!-{|ur`hP@SPpRXV+8V6%Ux>Ochqx|>{$IkDoa2!5y@RZ*w$z25VMW`c z;RfnQZ-&RH8z<+2?^r*oeDDbSnC(GtIXNXJ=LKv&mGi_ks4vhFcBZ<7)S(>Bx${|Y z5!Fb=&$^4c1X8#7JasIu!Ka*8e+iRPwJaTa`iy!8UYMV^BnC>?8_91EIydRGA?I73 zt9}`^$ZnT9S%k?yPVjZ%;A!6IM=1 zxQV=bVyD#cTcFNo9Hzdz*q^8HLyUueP{%>?PHxgSa4l@4o%BD!&Ks|#*8J#uul9x3 z1O7{Y(@oH?A65M<+Edk1?D0kPL7M_EQ|(at-=sC}>K6JgP8GaZScUqiS78^bB1zwr zan#Y4y2-1kmeU^|r_06)_{d0OUWDmrERhQR`pxEMG_20~38}-{o$B0DkMTRIaGZjx z$+J(4UXM|&OZ0!=tf%y!g6b_Zx%M&skH9kM{|#(mJ++FV-vQ{q37l?~Q0M>GTdnO~ zO8?)gdU1EGRjPhqBF>5W&|4n+gQ?>+FH_h2E__KJ%y^iJIwo>%B`fC_NN@CorKyrG`E{+Rnong+>S=##l!c2K z^6;sj92|T4x2?S z8~xrkYg-*)QqF77hLMc_W3ZHURMq!sN_7t%J@@CFcPluJdf`*xdin`TAKBxa`*;rT zS?ldg=qm}QgNwm@_FF1VVK-1cK+cobqq>~*A?Rrb)H&1d=wr8>>z}AkC-v$NaSm1H z{hRhk=L!6P-!~65Y5aC>xR7)9GT;A1-36KNH*@}4;;KJ0-*<;cIFB_9 zp5dIfoZGs>c}>Z?yiGk9IoJJ|{*gyv5pALW5c+STUGgVI&y%zqT19wJYpjifAGEpJ zX&7X*=Rx0J>4o*qa4mgs#143Z_w&>k8iW|FO1FGbvLBIW|k0$Z9S;mh> z7f4>1>a%&-cxN2v`UCa#;$eQOEn4Wkv^iMS+iGq8sQNUGVD>-G=S!q26Z+jp7Y7;t zH>l?-=Q0yn1FX3)Kl(ojOQQco=(QChvZyoU+PkS55H&KUkle$m0srkD<9b8Y{wCV6H z{nw;U!oNm-RW~6!brht|Vwk#nZD3QZznO3dqyHFOV7^iM|Cw%HE_%MoxokO~|Ir*^ zEr5BM|E2$93G2A3_u7QhTVeG5HC3SHeCKq!gvmLtjaE1N4E&91;fc}P-_}l6c%P<>+Dd&wnfK2U-?;~$QpYwCdP>f` zFZNy*RtEV~Lig zMo-f@Kj(pqu=4_N74>+l!7cP{X$|9;?`6Mxlsau=;d$!#E`V3*1GoX+qrU3_C|!In zz_;`bya(U-d-)fk_b6?x|0-;y{q4_>zGrB~wRZ3~t%oN4EK}*5wO6pb{+meg;*OdVIL)AAnuOC7)5RBgBb zW2okn2K_eX6tC2K``XHH_lDD{115E0H(6gX(($KIA1VcUdu07WrFr&G)C-A*h558D zEYDjZ>watc5sZPus7JgME}-s+)SuW*-Flh#FHyJl8GK{URDG^fQ=P_#-g2@!l!Aq^ z_axr!Qq{C4EK8k(v9K1^O_sps)WzBfJ7XoBf&KU`@f(liyu8?Xlc<`V1J1!(kn^?6 zosnw3-$31^CS32L9$yc5i1~gLJWaO2Y$#ot*T7q>^O9%%nEI|~;VbeD?!b8ZN4|o8 z`J4MEqW7%YEdOy>MZ4fnkDiBV*|a)vht@>x2cK&T*(u<^)9-2y`tC*-%+YYA{*8VK z{;i)-c3?ImgCY4PAtPiwgiVaLMj`Y&*qCTEgbS&bCg)N1Q9tizc!%zL&tWR+DHTD_ ze)CHz>+pP7{ing+)MFI=Pow%qBJ{hJ`dmSHkt*(A!Z+xD8O+IlFT=3)8x>yFeLoCHU+ z?yrK&>0fpT?q|Pu9o{6)`3^>KE_L4T+20N3w_d?mR*UrLXBz&yLU0kkE%yB?>g?2oTZyX5zHT4({WtJ9 z^Zobmcj`5+fH$b;E%x05*7;NL1^GCC!4G61{R@-vugkgbUVvoUJ!k!HIf@cp=KCr zA5fb**&g)U2RpD1oM~)Q^|NzpRU5}|2^zZHP)kW zviaN;`+pNvI-}uv^#2uniT+o>9CZD>4#TVhQpce&R-p8O7+@8#N5NV25#0&5T7y)- zfD81I5WDXM^<$+zKxVqhd;tyYKH2ZrU^g%rc4tUADWz2?*U6u*FeU7b*w`f_f1(PcEL`J`*W}l^>Ji> zH-g=v*m;xK-^spy4(I0`_ycuS#J=B1-NiO=kMjea0L0GQruOq^smHRE>p$7oZHIU1 z?;&-(p0Unfhi~aK{~RW!o;Dpc|LyPTUk&qXYy6L31MRV2?0`v{ zr459?;uksulj(7)zg;;!t=tY?sxNn75;0XMZaWDJ3L5%x%FqYk6X7n_jI%>t? zV!Q+8;2QSzGT(2fPuEv)Kl6Pol={4~&i}!_ZWH{A?%ZPEJ)%qR75I|6zLH-afwxHN z{G`NdkOgL>n`0rk%wNFY5`F*9Ixrum(dPQE!Lr&Fe?jy;kiOPk;TElfwhcbh)@qVR zW#AWV0(!9>K$QTM*R_3n(Elu&~ICI|CQkw>ZgALS5rlKGd#^c z@Bw^jSY`qAoEz&;^0!KxQ`P+6p1Nx%xE_c8Q=s3q=)W{Pjr}(e{!5q7O)xuMejdW; zggU=Xu>xD5=Rs6^oDSz%&FvF#w>4JTeScCHEFb!NZ(UP$JVMU-j{v;NBUajMsFFI9fB|)_MZ56{M0Sz4of)yPzgiq zy%cKPH=?T1Zmv5p?!~XuhkD6RA?HO@9sP-94avTKE>%+HyxfoM62!jWM4i1Z@Mr3; z4u?m{o|OIkdHi_d$GJxT_x-7CPTmH1jJkRE;WPTMiT<;h zE!FrhK{XAr|Ju;UTk7(ULI0`I?<(|P9-dIH_g{o@)?}NLb|r4mM@IZTiLm=*-7jFLcACR7_Oc*c#yvK58)mBJgLxIQio37FblIoIq0RXwfJ>y_IU$g8LR^t_qCjis_sck#=ZD+ zyYaT%f&;0S{1J}fw{oDbX;_IST#P@j3S7&+UgrB9)L$O}4`Sa>fv51}$vS_TD96w6 z4*h=5!6&Tq_uv~Rv8wBsm})#3(Q_K=`AGabGrLCz=AzC^1vu27$X^kCZ}gY&kAipo z1N{eKUTv2@HTrI#ee~CbQ?LUT!jsx0?Fme)U)IW@@9KI{eGZ&VfAp8|ync!f$@ul~ z{%nIL{=oF;x4zMx4r<72%u{~AMaD5>J=X_~_r^W=kowx9|4jG+W&ICRhhO%8Ez!UD ze@CPL^yqh`S-`3cf1_^mDEPu0q3U(zur{i`k1wXHV#8!fZ`LsQ(#9J{Oc4oi70FI{%^=`O^z7&_>Z_N9z;6L^(c5bYr z&N}7S&&BLelj~yCvz0m~VdtspgZl-3U0LrNQ1@~VY|psA2zxQ^|AE7>62zZ35pS^6 z&zj3>Q5vqG4`XAvnLbS7$BV;%KMo#ezL)*{@6KuE$GOSA?l-OF{T5xY`GNpxa>>eSfa!)u+PYbi;fE59tT=8t6SaTHgSR88Jp$^jnka z*kxcJV-^*XS&!+eByoUW=({NTzeo2)S^qPjeX;)o=0qwlvp+)r7vMf22kZl_IG3Gqmu_tXMZRA`X#(IwctAT z^p z_m&NBVL6zWYK;=l^-{H~J#6j26J?|C@BNYfuiz1XOXUyx=wIZ2#dS!#<(GXxFZ==D z!S(dHmbl;(ZJ#FRNK8GGJ|6bb+w1q>4t1BOEvV==(h@e)l0*kcz;Cy zGmJxO{O>VdseYTcjH0FwJ*Q>%Zw(#Bzxe-~n!l(z+#}ilNnP%r@c-3U`fp4{95BJ+j_q+_&YY#h=>?Z{WXh7(h5`E$17#~sM^KK%Ex zuRFcZ`Tv*syyTR4ePw*yCkOimelo2gMBA;J~QJrC<}8_*QqWn zfcKysEJF3(KCmv{|KjL*v_GrAGu+8+zY0F{Pxn8C#k7n5F#2w$Y8v>%6S{ZD1+<{Nm?pjWswQj$&4jd4C1{ zsxQM6_<3ZX{}26&%W3~oOP<+=27PRWn5pN?&=>@<(h0%Lo=qEZX=T5%B+Vi33f&R4q zws5V#ihnu0?H})d0P|_T`5pA#M9Z#?fU~qV+BtYpTTiEZ@dqT*N5PhQ1J(C%xxPlP zfZiYJNt7Qrk724fKv|=;iUV~vrWym$_hj@h_WyRq|5JFK`Cs}jregN*0xj(S6-xhy z&3kYZ{kjUH@745mmblM3vn>_;>FaLJr1K~5HE};Ldagtj&$jSOOS6~2@2!^hb-3M{ zqSpOCt$jpt#qRqD%Z_ntf97ysvzpX~`RMy1d1pTEBICU{Z<*-bBs+T=Ea5*KC3${5$O32qm-)*ofAAIjL3g>% zsvYs0=)0DdQ5y;;Y0b1V@RYVvD~jGT;SU!5H`Hq@{V%`|Amjh8o=DCAIq(C?`dxkY%^XH2@w59srXMSyuUrsw{6Z){h6Dy`+v&yw|M`g9``!hSoMUz zC-iZOHy5Zn{)O@TnCQ6%`#!Pz`cl_(1Dr!wVCfGTNB!UI=n+ zVO{on(_lZWL9zGeGVh;(`{+~q9NwjWb!POJg6NO<^>bns)Pu#?=k@DZM>eKfGzx`{j-#DpNAIBu@8e~707W*z5X2Gtn0rT*$w}u7r8j0SEq4&|yAUZ61 zcd6pO6gvKWQF+mG2fTjG;9P%<@&lapf8)Q+by{toUq|1SwKUo{Fji}*;(3yHub=}a>w})y*aWjP{xhK8&*_u(h0^~t)h}lv(VsnBZzm4;7Tz!n zGmM_oF#Gq1F8<%`u$6gQB0uc^Qz*aRCbJ|NAH*}wUUYO~UrT+)kI+xmR`K`O$L=2n zhgjuReaEHN*LZgDUs)?ve#cYm3L~8Nn$@5sjONp!u%#VR_WlUweev_Gz}~+KPtl)J z_W3XE1dFFfB*WDmqC;Rz_^y`#${w4joQlYm*_;EZi zHC2~oAD@X`V^x@os9;N2fZe0yn-`(Jr;K+Ey-$ZWdS3=ZZqL9b7=_n2H+pX2e;L&X zPWK0u{!jP^_-}EYLffnKUsg+@^gjYWfQA#)w|8*n|Bza(y$On`7&kpwgiP7(0hGUk2>6!h9!w}V#_rZ45*%iOvL^Fd` z5$>S=W-Ppk-|r|)OZSen=-ajKS~XyEE4S+ZIGXy-66afEjZ*nN=jaz%6g|G9Z(J1^ z$!gFAenB4@vG=>;1y~6u6W{q2ZnOKSdc)W3i7Kv>gjGT8y=?R+kbPbetb!ge8ZY1^ zScN$58u;J1?}~NsH`jys=~U=#9IJ%*@n^HYD-WfQT5GtKbCTk}-%tI_Iq=l~neR_= zeUE+JefS)|y{z*eozIkgmlFHV;`%ePdn>`5ZV6TA*F&EtsiRVuJ`W?IpS~Y5-fdPF z(R(mK?=fTr{lc}+zbz^!dT!!>5!D1v^4m)Phx~n&{u61t)%;%yuitR=J{0|5fcv!N zWQvGC__g*Otftq}pTHUVD!rl7e^O(g(!Z+0>>j$qLU;>@!zikAe-Ewyqxa2R$FR!mhoz|ED(52#qW?VTy#aoJrf@u7 z|Ap|Nzn@>u3r1*rh!F668UJGc57FvtQa>n8`%w!h{l8cJ?rV@2_L}Qi`g*+;dcUQo zP16VDU>PBebq z39u^TUh;ODCD{4hscS6behBefiQ9k2uCOSaN4C!wQ0%-8aHsQA!oGfw%ELU5KW8_e z-=Hpr%=eGj*GatQwUbi$agy*BiN8J_|Jvs;D{oUhn2-AX(&x)Z*56PldY=maf4vV- zePc_J6?BI0%hJ{F8ua+LM&(1#bmA|L1 zl|jY%zM=2mujqXReSc)XcZU3)BJjU?-%EV28`sr{?|cV)+vQb0&uqJeitELZ$N7}c z?B=0bln$j=PJ zAIQ&Z1UD1E=?C}Y$DIaG5wG09DImS$IR7M8=xxB)8=HGBj;{vA;T(RY2k zJ?)kL1OA`jLH{7$2pRwTmH(#{S-{iK`*5uV86teIZPY5E_jF`|uY?Wsc6vtiy;R?? z4~GBfnN<8g60g63o~y9y?*{wQH*+OiWZY7IpA$wNweNdl)FblG{6!z;4Y00xSTa6J z49D&-fxg$8F?3{*ypKNCVVKfdtNc9<>wZ1--HJR9>GL+8INw#c6+gekcW+on)V!a@ z{zwE5dzbi5f7l%V{v0@pe6C$^75n@v@GSP;NBF^Br25ik#tTp$eHOvLBYAr{Y}QNQw%O*e^&+m=g<3@{H!rtA15DkIlM$();@SQ zp%1t0>tw$F=wwv!*;K6a271bjeJAz1|Fi48?BnH}cNBdbq`r{Ftg;A((7V`m|Eu>A zRMKEyN>Xpo=LY__QC;Cg;s6`q5&v-idzef+>aU8vE07l` z{{JyrN9{E{uI*wa;CWc~dDn^R9);(Zga`)a_QW@T#{ylakB{+=vU=a>Bc zves)ly2yUtve!Y`@BIr8CCvNJtjo&Y&w~}%7QI%)`!gE$;L{)BO!^9nz4tSHhabSZ z#C6i5$CSi#Kjm>8L8Clh{JQ<1#BpcAhKzg3*XztrU4jG2*OGBRjy%2G=x?s`west% z!a8ii_0EL&%@O>#v$+19cA5(nx7zxS6@{{NH20h6QWG}>8z16URR-zqps>#gFy=e5IHJM^AUkJOLAF6053 z=zF_R4u1AyqC3gP?{Qi>nd(E&_AFXs|cSb(zD)rMP z-qV?LA34$YOjiF^@Q~S&Nmdwe(w-m$-JK&Jzm7#F9ws^ z&*&7!du3;Fdcwx+^QXd*cz?v+TSb3S$>TapTu1D^5B7W&&&^C8hvaV+A#bw{EXlYR zziuto`xUSaalBt)Z}PKce?N*ij;#07iTa8^SNh{tgN6GPKNeLIy|?kF@ehM@{MGRY zNgQaJKQsEys$KK9hxIkTwiC|QhH6>S_YLiW)(;lf4I+W$S?QCM-|w*gOy7e3(~<`) z`@W#jN}c~`gVi^M>q*85GJwVIPp<5~2S#bL5&F(f)qL^ySLEEsE!dBEUvc!joOQns zJcqw$H%x-pPvSh5byMZ{w8qargX>8N^ZssYs!;t9u2V0U!Y@`_;3GKcHV2^buYP2O4dha^pufx zUi|jC@ZVK|UaZD;Fbe;T)QNI9)iDjmu#fu*mf=*-&#)q^%4sNl!DYPHplhS(y%yOa z(nquo*+J4*wk}a)IgeSF-G-`1=f4nD8GUyp+W#F~?r*{;=-0nQ<$rjzN9+W7KeQ6s zaY#L9<@b52-6tcA_fIdUKZUW>n`?&N|G@7n`Ttot2M~##%V77ngx%?mxe(4VE|d9% z9dBe&@xGTvO)|c)U+JT?4%VZeiuBhRNw!xh^u39GjI!UqWe!&Py_v1;WOSoX`ZKhL zz3}?Ud9KCS`>)_B>nG*s`G|kNJbH~{pWg{KB-%S3j>NyW4z97=;lW`Zrq8hC@xh`el^yCjQc&< zdEMY~_Vp9sW#^>Y-`&TbbBybk&KtF_PeSxp^6)Yc4e-KT#An5C@5Ns)^Sz&Jzdq0< z3qaQSlIVRIEQj9Zd|+kteiBwED?seJ+ISKEf%WLxCVFo`6)LH_-jM!qavrlGT|K4W za6_Vq(s!f`yL|EceC_wDeg8&(XCi{kOa2YY@2_be{A192FRi9_9d6T>XeH5iBK*FK zU^TswItMrxyI;9F4ty7;eGOlM+4NBA?d} zGZWXX1Iuu#PvUyr@$ZSfHwUk;`1cOt*S`***xwPUW4q^p%S^oddn}VX6f+?0T8+gZSx3LFwx*>wHE2)y=RPcKlIT8*lMd zSf9H*g^k2}h+doWwu#=Gv%AQkxK;HTZcf&K^c`--Uy~o!z{;1n-?!}Y*TG-N|9AuA z{RhYl<-Xcy+B`T?YpcD4N3|Ww?#rrY)_0))Hu_g8?{lMmmP~Nu;?!3X^y_EVF9jRp z?UQ`3Z;d$BA9XY9eiHO7{=P~uGv5A*upHe}eusV7?|abqa{6y}f#=N*)@GPovV75V zh&uxjSd^)Jh!Z)A^jn#PKA5qdQfs4#Hu?Z|}mXM)@S$l2W-OpF8jC^k`07DTf6I&-rHbZir(AO z7c86NUe#~7ExQfrKiq~Wvh*QpiIq1Pea}MM`{5b?M3w)YN&CYud0%z4!rEpyOB<-p zf!@$gb0UCwRrl-X;XthY(&+t|{shkt^BC)XCiES{x?c-+G-j%N|LLsya^C9z=l-&x z=jTR6mFHEE{r*y}>yhX25RRtLqU85)GfP;*;XVAk$6+pOr;6`Z<8)s;^gV?5j^uN% zBcJ;{yhc7>LG+oCxL#!_=QqBDJ=o_-JbylUJlo)}oY#_g?!Wc~wa?4QxQ|4iKE{0o z7{j>l3~Mv)C&CU`gB##L;_UIe;K#oIr^j)L(fUg#wyO|66f2&bw~3& zCp>x2=(j5Um5!3%CFlCyn^RPLSGP{9dA~J%+@*i(_xSgZ!GqQ$mB;@Qd(T9#g~{V= z2piD_TI{_sMES+Px5aLy@_24?PE+=IDOe5CqsP3w71C$SV%$qSuM+G10N9dm7r;JP zgTKHryd9FSH-~(k$}YNEztXM*p78w_VJyWRbInx zjPqpZu_t{%Wqt2O)dU&uy_s$DDV|b&=X1^|(w{UIf4}5=?8D#t z$=|bA`Fl!hX|?as`zWos^7kCmHYk5jHa(5LO3nM7SOKul^ke!6n1pjbFQ7)0CxD)t z8l#N9FxJ?u^1QdP+m|@sUBgu8ymR2~8H3&{o2%9N-a+)$%!R(!n8j3l|2p>mMy@l_ zpF18_z}qYR*#>Z`cMe>|KL0NK6MHWg`piHcXK7d(>%Rm1iaZ{%_ZAV)TMvK3uX`T8 zCyxIHW@a_WgFcHg?n}c`J`MBz6_}IXl5t;{-C=I@X0y&qytWkfT|-!z{ahbd z2k+n{*p%v-D`8voF8le;Wc^)+J;?TzeSB}$@g(T)YqEZ&j`%>V%B*lO{orK04`Fv9 zeMSe91ulID2N6A%K6C?#Dg@xyFbo%w_j?fiU-3`%XF%V%$@`XhzZq8k2Dn%oOyrmS zk#GSUJs)0^UV7{!mP~ulIK~PQC}5yXWkzN=aT0uah{{h`x(*qJL3zp z0gN(7bHa=Fnkb*-cTC35C+B+in`Km9?@RJJW!^7JUQbT++?+1WlFvJZeg0N>0DCVH zdVFaeQ2yN_WOYmaeiKe}^?~Df8^qq*iC=dwyw5qkTQCiurbLgCtoKnc$hfZst26H9 zJa#+A{cJdpY<`L3PU8IS4Y-v3T@v)Sm8g%z@s42Ui9i1md6}Kz-|XvUfB%kr%vCTo zr?rp6oXq#K-WMk7p9Z}-tQN&#Y1Vo1=T##L*a0@6tFG+pTjIA_06Ve1?|?nfyZGz- zvaZW~Kalxd*7>1~bE)Grg6vPR=SMT1^T2PZD(!`1IPD|z`?vIqwAA+xR6l|d^bah- z^-x$E?(%o>|AqeFVDC$uKcu}Q^3VICRmJmzJ*X{Ed0wgXf7QI-kW-#g_u&V9gWdwY zztz(ir(j{My#naDp3zUu`@`|`F5-F}=e%yhYeuA57(Hji-WNY_S#zGb4fY|*Bj>t) zWc16tf5~iW&4KAT)q59~A+GPD?|z)>7zKYK$|rH%KRLgZ5q)MPyC(q4an&65;S}#k zxZJM6%Fg@AIlYrGF|&c>apYv&XGfnJ<30wKXWX}hO&Rx+ztf9zxZ>Z5W!xW!^U2eb z{QM22vPF3)p!L;XTe*_lIxrzR%!9#<$q> zlc}>P>-!Y+D&u`Br#?jQlZhgQ;3T{ZpTi0Ckt_>ixvmKRz|WT$J!dDXUlTUc@@b3U ze5^b<@A;RuU#pA0H9e2M1rF8+@c+n%(=Y2%?;#`SJfyEw40T_^=(!VqzEAm`2ULE~ zLE|GC9*k4syQR^0Vb1r;yx-W|tmggkmyN~#OS#x=QwM_ zNu1_g1ovA5?Z@zywada&P{FOKsX+u>94cm9MKoY^XGw-DoA z_IV{3_Y%*m!?>4yUMK8)+2;*o+>3vQZV4)$vx-&WBiDP$@`yx_XPh}Iet#P~uRYf< zIae?K{1jyMVu6!)^-<;J7A9_UpKF&mZ7TFujy$ZQuoixtFJLoHbI7>w=nhfi{ww@8 z3%MSMUAGI4K=0?_Sh7GK!%58ViP6{htl#3lnZ^8_1J1#VAolz`yvMS>&qu$a_xaSH zllgs~8xbr8=eUW3<>3taiB^VFxvmD^`PcY;=sC>pt~VS+R==F{`h}>j)MrY?>E1!G z0a;zw;BtML{ssDeg`Y?Ke1*vG6+d5XqB~;m52fDEB)Eq7-YNK}kzLjINl$lVIoDGv zA+Pf*PIdgv^>Y0CpU!jEv__)$wAN&m&szq2FF$(jOZ}cN;YzE%y$4>kW?#Gmh@`}Ob8 zWxjs}%Q4@}{=PQ*dCAjhf&WhI{4Sj4=nebgpOEI<5f`WfZt`OL^|+~T@~ zQB$4o?#!vq&ggq4_MX&tIf%XY0KUZD)77~D((J3o{VH=09M3*q;yZh>_av|5x!G0q z*)43Xrg9VGga4L5-%~8Z9uE&%z3fZyt+feHKJyV#o)WMPdD{}#na-|%96Ut6zSw)O z$=4QpFAJwP-@@XI`~2v$EaP6z=`>>8OFZvO#{GCW8arR|b>}he&%q7k>%4}CiQnZ$ zkC)lseGVUU-m(=;^#2HZ4=|~UZ*O-%!jOYV4m~s7lSA+B-I<(omLypuNfr?V$&!&E zAOeCC1W`#Mpb`cIK@dTbC>aBYN|GcZ^S!@f{O-BmbHm~J`=09Q?%h?ZYSpS$t5#tZ zj)%qZ{;z;>zMTHO(2GCkXIKkAUT);p5`FK4UD%he4f_%G(H#!QzLT9lfmuU-of%jS zn(yZ`ziZsTgWR=Gw~{Ok+NW7d)Th>U>wUMmNrUq`jBm~Jn|-+g>2Qm$U_f@=R$uXe z^!yg?pOM@@<$ig|eG~Ufw}9*5v+x67xj=hZlij>Q$a^B^dv?RG8TX}-ckzsC?DU{l zGiqm?fFEVNmk~zZkBRGC1rxL5x?8(@bHWQdnfwmg-&yZIW%hS2xQkhNkaJP12{)oM zkK^B+1BY^+TX7w$k-if-pCMnd;yH`p)v=JM}6;=Y3Zu(0pEiQ93|OEyrpIA`@8 ztih^K`*#CYjCgVLgJ!5D_F64cNasMJL#cAHt zum<;QxRCb%q}~-S<}~+Gc#!;V7vMv8nmNyvN<3e0N!LO@0o^RRD z(SB}}{fd1UmL{s}Hgt0?Q}$jx#(ibjnQ`A04rScS-kWA8`BuYsiQ6~?w=&<~fQOmy zbq@D3iQvfwq(n`vQTE@Br)v_xk*S9&kQ>{e8&& zN9_DE$U7$ER{9Xw5C6`0@QaL989wBl+nv+>4s^SHobcEBzK=Q2F_m4NQIxkb?!SP) zx{Gr268(fxFMF>(*52#zRnGA%p6_G4JSCCyC99T+=X!=yd^*3~(6f(>4LYxx$6FtH ze?q>Fx8POsG%1d+g7+J<&Tql)ZVlu*iM%}8*ZIs_&*W$Loqb&G=N7gn8UJ29S(k;SJha<cDL?B^?< zYazS3^6!3=oxdfE^BZH4x0k#-=NnX;K_t9`6UN>}hARwI#uU zc=?;dm8|++f!}-En7Hj+?DFiTT!B-&zd;}InnjRfV|Mwx@OixbZQ-lzht&dzd8y=9I ze-62qftQ)D<D z>)>Y@voi`I?_5Oh4T5PzZ)(18>uzWKI}_bA%(&m^-or^=`E~wA^JBkRUaJ&xu7P() z>%1Y>T5Bm>X@XFNT<@53TwYf^r` z+W2)H$a4f%e?9mS`#IXzxxhZ|JQ$6)?{gT#E|2zeL!92pjT~EWYEy9>z3o3u9LE^) zEe)nTpJ?8B@IzJsTIXl7%l`vBMcjt;{vSklN$=-mR*>E=&b;O?0^Ao(t>qWf%oV!1fts&H3GxNL%-#-pcse#PP&%et#`;Z^)@F z#c{oiU#|vy&;6mv-*6PKp2mF^d3+VemtnQG0?4~7=XPI(b2+!Q3+}U`J-LzdeXFkV z@1<}%$pXrqneQ*bH$Az%ir@Z zaBAm!SdqL<+Rtrf4JCtTROPXp+FJxSG235&zp%cKN6w}3?hSyAiQ?M^$Kc(SfA16K z`zG*L#{EKAmeKz+Y{u?RY2-P9{hVrWi`Q%NGyKLruJ&~bvFg+L?0B*qIK}ZT{DC-4+50!hrzZbyZnAX9zgrgX zZ(EqbZvO~ai_`jxU>nx=^6&P>pZg;mft~*lPRFlP2Kg;!mXLqIjP`zss0UxsKf*?X0cdv)k! zoXgHn@b@$GeKPXaxKBaOFTi9@fk@vcVQs!--Z#aJ_c;GFBXx?(ZxF5tm?g;oE(VN@h zar}Dn>*w(__SA=AvNgtFjiud>V649+1doAz~96R$TP z?jReZ^!_n+`K9-N#p|#5y?@BFQ2{v?^KED4F2DWv=6qI!EFH?f&zh&g^X7xFV*K@iLW%!YI5>XrTVTR?Ad0W zUyIWlw!FZ&gG1To5|Ag9{ifwU=KWx_eXmFHvXMl$T2U` z{My&6Ky+UN=wa8dFRX`EFdcSa|Mnx;pYwKy;As4Mzr)#h1M?%l_c%|N2z8oE^ZstK z?P}gX$}X_x{R_VD{O`d(S=TFG^Kainv!9!rXzzQJi*lM%^L|;pMVj}WM15=CPh}R# zfL?!RWABF;@AB(aMefr3H5uo+C$$da`FU6md27C}hn1;uUyt2H>H9i7eJrd+G|B6* z8n=^9gO$kAIt01bIEdZ5a>#cP=d|U||B7?kIc9q`IVMlbDB`t`Q(o^W@ZCK4w2hc^020y3Y+0@$1UJU)A>~JF@cM z=Jn5mFJKjJhOcm%N9(<*oVU6S7qk1TdH+NFdWzdsR<5S-8`k&z;2Gj?ron62`K#f5 zZo%0LbCHcr`+7R%q4=G0^qvC9!$nkp_H{DQ_bwRpcQEsQb>{aflAL>HTN%CJ%sZkhA9dXNeLX1zWS)oB&&LN?;0X=HC>U39AyVqqwb}WM_;< zuCqCvT^W8sp2orOiu(!?Jjlr^XK5d|rq$A_h`fj3&+P=46ScVno*-^Z<36`1`aGYPwag8_ZBklW$zti+-qOwk++4( z$5o2x{iT#M>^Jb}&|g{gU4fm+zmXp~zD!B}-5Er4wty=*tu4L3ja^>p{ll#Ox4_Fp zbAJ!-v5$Kn<|C@N6mqPHy%&OB?7a@KKK9;7*ok%C5;%}`p8R~{SQTjASN7Gv;Y!wd z+TZz<^EKMv`HKC!*6^fnt6A^=!unqE9Cv(|xtWoD19pY9zf+iKfL~xatrn3(JmX&L zeT!@@^6!Vq+K~WjG0%HpBfd?3{TBYwX5Md0uhKfdBXXA?w+p+6THkl4m&wk5o>KwC z4L1kI7=C8PeK(@Wrc>^W7Md+`I^zcNpGn+b-nyLXE~iY7eT45WO`O&LAuA5xC1!!dntK-(okn6O8k| z;avq=6UFr>oP?cU7I|)EzL&lC8|SgLuTzL9&dJbak2dT4D&*HbO8Hq<$^JDT@ztOd?CV_aJNR|8;5vGV*898g??m7cc7fZ&3&dl|?z`?g zY3#m#In}p;asj*qhhb^5@m+;ZPIcx)4i;9U{JasyeR)`i=x?p}n{v8Sc3&I+2xIqk z;#QhQl%MBxul)JF(C?b}`}x-xdw&4d^fhdjuaxP9bX2tK-;P`54QM}C#azMKTT?D}cmug_{g^L{7(s(F7fahe~(3B>1q4d)ZD zbp^i9evbC{wz3Nt2M@51R|B4AH>fkbihoD`p8LdS$j_gLRpMq?f=?ZVF{~Ek=TG;i z8M{Bs`c8I#9kRB_?r(~nmkir6?)|VU_FWCw%m0S4`vzc5%I$oEye_zmD1>kDfVJWW1c`Sqebspeju5Zb;ja(+I)9@9VY|#c^#UPFsGSuUP#lp5qMuoloEm@~s?)xp?(2SPJi-)_cjm zy+mRv{_>o;H>D;1y}^`wvHLR@zKR!kBb-6hhw|(#CCXQEoa?a;6wj4O)R*kO@7T|& z123WXwZD54y*~zKq4#C?7e?>P?pO4u;&+p=_vG*M<0aPqZcRR|c%G(21Ipjmj`=fPJy+Yr-Mu`=)R>UZi$#GHRhMb)SPf@b8R*$5{O> zfxoiO+YTRcisvjW%&R)58H2r77CCyc1~u>3BYsEwdmUNlYrQ{+UH^q}0_Ux_!TGH7 zPr}vc{lDNgb^(hbzppuWlLmi4?>B_MvCfy>|2OM=#q&k8E3^!jWLNNW=tA$Gf*$m~ z)_v8``&#!k!msl*Y=gJB66}W8NbA17%=cRNy~J*@)_o)CO_Kk3?7H@F3R*>W|4h7z zTJO*Ce{Jl(d5m-UcNTC;K=%GyM3K!f<)4k-U*NxL?hm`fEgU0}a{+ekbUw$={>@LY zJNmvX@|{H%*4A(b{=8Z6PxkM=f#p3BPk!Xv*z=Of$2kfsZyM!~@#|b#`Y*sC z_A#@sHx<9G^!`$I_iMvXIFI=PJixiE*Wo#$d)|k)*vH=obNObN^#10ar(uXF(7#|^vN=fpti_C+|IVH9T<|O<2JIFhYEDSoA*^YZy6t^+anrKyln^@Ps0xw!OtWB^m-n{Fu zs;4uWAN|1XOa0(dqP9MQM>vm2_TXm$#HHzy5Wv zZP$c_?H0z~b208;r>tn6)vzV;8(+gd?C1Or$Kcm3ggoaH)g!&XmQ}y}JiA!u4TOs7 zn+2~Due%=pgT41HEX-{if5KQ^Er9%N*7=(E>$0C)54LADp#9x`#Bof7hb^eD&{!Xj7wF|j7<@P<@!|*D8 z+(hL2KKfqwaGbEtnR|G0dY<;2plmVPiy_~xoX$}m)>&jod2kHTTi?TVc=Zb*$FtseJ00e>YnlDr@{D`gdmf_r-h>UfKW{Va!anXv z_%hi!w68av(;KCc%8{xAg4Bm!}ILpFNC+S_qM{^zDXv}c4<}tir-gs zr{?`C+_Izfelz^LO<^}*mN~!iGN*cE_f5qr_y8{EbjN=9G2XzR;ZFQKQONCE;yB8~ z3!Jx;zxM|5_*(ZpCQIKySeSQDhZR^Qz7JFI^X!IUyo6_9J$lVO*qZ17$-f)xe96B* zUIWR0I9|gvI3B$(`OjcoFZs{&e`w^tglI9ze+A=S^8WyRFZr)yH%ao}#BQ?W|0&U< zvirCC?-}`j#%UqheV_TGf{S4tPGMd`?t`qJ)-%X=G4{RUwRG#o1bCNQSLDx)vz+ zKK^)k6?;#9zJKuR?}CNV2IpZ6QQeyNZB~J0kYinX|Izq&H2$X$9V+?HCA)|8|6=sM z=Kqzf>m>iR*m;uwM*k@z|1Icy$^Q#>6{P=n`tO+WzZw|Cy_PyfsuUXfvRj?GRI{9_#c-ncCkKrZHEVF;F+ZN|iKFU2C-@z=_ce-~a zooL+msfF|x5>Ap^F_m9Fai2C~j9%45j8o8at z&!=_YAI$qz;Xj#bkBKfaH@3(`SSl7w^|IGiRvHx~5?q8<- zC8vQU|NZ{IjrkNXU*uUKX*OGVVCOl1?uJ-eC;?)nq z(soM|zn9LqA3?b`@tWG#Y0qkJ8yvuX&S^N2|2}{ViRP2u|Cm)@0PZG=zYRQzz4tP_ z$~pWu;XlN0ZG?q=Q_VeU4z$4^ls&#}Ca$M8`}y+ow?XgMg1xw1O?KaKqCVvBo6dUg zZMc+kd0XKI&S{*0yYchggvXfoweGu26i7V0&Hj$o{W*vRcn%ijwAV1`V7)&ZrnBB( z3#(u)$nV>T>}`^NJ9de*-~R%BKFNOwr~f4X(R^C+pUQeq@}I|kjn;olnfJB+TjSqi z*8dyuB1`_;(EF1AE>3}K{kPA5&B*^C?o#c7P(-D3`7KVlJ68m>2U=eRMZ!zRs#XHQ~ z48G|7m>xiXC2H?mxZhjY&Wrr+5T}~}i`sRJUq2qdp3dn-825_fX@Qq#6?}o!-d^}B zeqHVB&EmgLA-@%P`K9-_vg)e=50Q7L3p~%gDf08(!oRl|=JJg&d3j0_-A4=+{`?Qj zdOwWbFN*vcf;E8XODf5V!pfT*bWq1>C~C|2^E#ysvfN_ssi+ zklPi`=V;x3pY?uCn3q|i6D*09_zHAk_sxM`w8e+82G)Y)-yFM7^6$i_H2(Xtuc!I{ z73@CQ{}b@@Y5g|~|E|{mZ~GS+|IZ56d-DH$%)H+iZo!Wy|IbeRIEv@ohu)X}=Ns(% zq3}CShid(Qig{k^zaNPzlKjsRO)U9ejSUi-WZr)de#pGP3vOrL*Sha8`}+6bIoA7H_y5WMUNU?{9A9l%5bu!ue&w+HhQlOQ ziF08Pe~;u}mn?3Qe{147B>!&sdnEq>SPhc@NPizA|H*g_CI2_s*OC8kseg&_|9-&k zf#ko5^ALV1&Z%G#(H1t z{>#1v<{q8foV!m&emUqRbzxC<1-rsZc!x*8bfQ8e|H}TtM*a=CeMRzbN0txCzbCuI zci~G|4O;(?Ax=y2e$$D|sR-Y~dX)cvIsSbce#HJ=HMrHk!|eZL`VX1?p98G(JM;Qc z=KbFAd)D=X;d!!r$^ZWo^Zf*Pg=pgG@OQ@jTzG@igKxuvcyB*K-hS-+i?ADhT*YV4 zVE?8G+=e&jb@(&cH+I6JUfcTsR`&KWe!V_;b2aYgdykuYR(7+GbCvRSZza1p@+-(} zZ^2kbeRCLK+$(;sG2>qTy{??r`VcCLPjOsR@bdi%mk_^`3;C^QohQAoXwGWzB=%lM zc!fBQ5%3}BbQZt@c>OlP3ix-m-cLvG%g} z&B)(_-7oo9$L`noZ^|hk$-g669A*Fa;qxF`4dnlwg}+b!|HW93iST{A zhhDf5yT2;@9J{{(+{-RfD|i@xZYOw>b$%~+mU&b#^u7YtEsL$^88p*DgmTUVqi;c4Sa) zT&i>NmQhhre^k0yZfUWosA9>93B@WzMRiCFy9SkwiaMG)D*346k@tY*cgLkXj@4De8lsH`*e!@xF@ZV#GQBa+SYPjU*TP6>AtbIIFCBfg*`wXiXY>sXR0TyjWa9q zb?TRCehU zFX6nT^m22eC)8f~f?N5Q6-jg+sigWGcD`il+r@Rl)bqS^kt1N*VTyTO^}opbt~r;O z_DOf9IQEx`ifZmCUEV4c74=Hd0a5vBkDtozFL|YSRMh6&QMvX=E!XS+L)niZ+~)X!3V@Q=iD z$uByxB019jNsFcahwKz{ZtR>tEhxXvO}oC?cm9b}|E;LcKfw<|8$(%50gc4|%LBZmoLU5xq;#g0;ra7xRuD~&_UmeY<_XFn%!x-0hjv(bt z&gP~azI9G;Fnb*Us}w&JjhsdtbCRQSbi#6kGYB z5`76?#FG`WA}?6EysgkHpWFG3-PN9c zuXu+cth*%Fe8JCx7pVW_kT;wV#x4o|9E_qJjs!=9o`WxkiiJ;7-{jC&q4(g1V24mm z80}hT>T?#kMpLh4u1AhB@S1a-slTZDpQYZC|4PP%+G~olvT2V@N7wS>sQ>@p|BcCc zJI5bUGxIyV{VgBzE^Cjpo}$0U*#$hxuldMY>CQp@izFr_mamAuNZyq^$-y{w|7Gm6 zPkklK`rw!yZTt@ni57l``nTltkk$+PgM&kZsn5mG@Nl~@?G?Tfevfu|Ix;y@F2edH z+$i!JCi+6{^nAI~|r@~=N@z32WdiFH@%?bLIO_lWzLIVaiE zpBSu!Tyt_?fcy_FnEf@6M?$}ae&Y4C(8fa@DDDpD(c{Z{wG8q08`781h_5JT3 z7W@C>zXixu`d$56a<1n(>F90x!yeNQ^0=0metwquLG^9!Om?(`hqKEo83!5<{m>(0 zVWHSH6_U%$%s)JRerkHcr?Njt#Jx^Yr&Ql!s*AG5W|F#p1y;UmoacBkgZWDSGibCF(!YPp= z)b~C$)&E9BzBKZE!}m(y4?fo?d?b9I_f3s_9NGB4TjRf0$%?FGToB3#Bfyj<~Fk>x3)QtvVjxW_fH zntBF^-n>mc9{I)^`_L7hAD%=1?j7=lYr{U&Y8CbWEj%K!1b%Ao_aEi`S>DUO9*mc8 zFkfgL-%}?1ad-#s|2X`2_-Wc{Hry=)_zS_ zcN1?%`j_UpvDBx!>w#fy=KqP5ZPyi3{+9kQh5C7^zvh8>{;v1mM=z+KXk4iOCptG& ziiRzm`5hC=HOXJZ+MY3j`WNvuceg^mS=KUl9mf52Yl?dwZ0)(~9!b43yp60B^j~tC zBdw?_D>Bo*6S%~9elhrI=wIsHHrPCLo_bvit_^(->jtZa4#EbZWHcV@lF*!RIqLtW zb;52<{qk5{?VRwsJJB9bJzw>{>T^;)>gyZW19!U*d*#lc9-BZD8O8;-|$!YC_D?Gid%`h(Y&D1&Ad2M|=g1=L*b-pFRDX zcHmU7G7N?P3>QQ08-m+I6Z!kr&}1}#{McXE&8gpIcXeC)s|Vec?1|We@4GK}wNC5o z?(N-4y^Fd_dKKR@J7c@Y3G<-uReuk1)p&o`<%rREc;w79uh-0$_ciARQ_jq`6AmMP z*~2TbpEV9NAF3T%I?FjGmis1O7pty2mHJEEe*PZs*2II2ZVHf>D?e!b&p?;wG@gnusJfiusGxNi^a?|r2 z%J?)bD={nbyys7MI`utfb#}L*zD}!%yFTr(#Ciq&m=*cgQ^ktL9-6~G`ftdiV=#;Q zqqjnV@Y~e)y-<_z1Q?2Z8aYmVM|t1&&!xU=JwN)=;WVqD?<4A+Y%MbKzwT~m`u{1n z!(K?euer?gtnZG}=6Bi(V>4VO!3pP>zS?-=0LmB_q-P>isVAZw7m~$9lDYok;y> z!>bt=JwdqA+0)eTqH~&=_iwnmnEE@>hmWXV3EJg}K3Ht}M?cy@^~|InJXs$-v77rL zcePJ{XBAWb+@85~vHpvu-X}c$tabGJmY%TH6#1_VRtf(| z{n~|ggr`vNd!elGR_gtnZ$a=fuV;E|2i(k8n?23_Yp8!y&vu{m!H-r|-(~9E(K>6( zzvZ`P*p*E?G_)08cZP8=8cuPq@s@>+-OasgY3FEnw9x~b7|)V(9@l+GY2;qob=B0n zCgVWmlITUrzl*Ct%mr8yJ*fAe$sPySoKMEjO6M@sE(>97`RVzNcuH9Hsb4oM!~Hq+ z9*VuEcIe^x(R~Z~AEZBAg4aExtu@sDM&OyyBI-2?t$&1icMB$m*U%2NeG7vRsdu#f zMxZP0P}uvfU-REIPac0?81I?lD-1KO628sUyN$KS?gxF=SX=(XJXTFR6Fs=eoy%@R z{Rg?Hcz>n-)!a3`ifdf&^2ey2>s?MW&If06oU2gG73w+LRWRlv?1~=v2dZ7vFREqF z6S=e3Pv4>kq!(5>r#fP&{}1VNQyVei@3$BKj~Z(gS^d+nHQG8hv)%u7VVUa_tmC-)L!56y8460!GGgJ^Tt%>!xrTW<_~8q zPD`c!mEB|0KcU`BGvd=(0YvVj_ixb;5FtW$vn-G=T!s2h z@_!W4`lPY%d~g(8U{?=bq#r!+P7Jh$VecvbRqB1v)6hQ!_VDcWCBq7y?!FV$dp~+n z@ajUz1llouAE|^CB@xplHDSwL|Q+=*E3&b>sndp7VcLDVhwceLp2f0YB zXWsX#d4DwH;u~Ji!@Tf6+hYOpA6LFf{*@Wk(x+12`c@_PoAmQvtc~uGs<-zQ>o4kk zfOaT>9(dYn>2|}WzKQI+XGN9-1Js^#FoA;9GAoklOAMW$e4Wwlh6C*4!8QElsJD5* zrXN)HZug&{-g`W5{~*|xd7&cX$m1F9J4?MYX@@DWxwV`YR6BGtdf`vg4*1KQzd9uU zF|L6JA+DgQcMbY~GgJR3dLfQ+q4ERgRa1Ypm-@jc&ZUk`<(n1w zHzS9s{}A^p=_Q%(^5F+7g`9_ZQmt>O@5i1VR$IpXMEA;!3AE4fg!dC~I`Mbe9Rp7K zYi3|jSnJj{{spEVjP~6LE~I?g9u_PPd)ftq3#tE2+QA8HdbjwuQ~zt8+Wy|~eb2AH zSXkXN(RZ49pFlroA7Bvkg!H4+>T6#`{!Z$bY3e(~uqORm{h%iG6V)!0VRPiK_POSK z(DvWxb5?)e z`zOwmjusW73pP*Rnp%PN-1qKD8F#5yP0ty3Q{=wR(+s~yR^&U+0P8teA){*g0P6pu zdn)%`WJL~#zQ;qsycV3qf6?E;*`^)N`%i@)@k(KTRWlyC`o0aeG40SZ_%rVqV;45< zP?UC%etg$^)t|{YXy+a4A4dHjcnbSHa0qsT#zj$&!{~=W)PErLJK{PJGYD3T&l@`% z4x!#E4{{AP^>?}|nR-5OI?TAR=nty5+g0DRlhf7N@DuvQD(b&1ZE~tB{&A#+RoVRo z{eQgG&7GfdACKMN4d(E^Z5^T?RCC8`cH;P|ew11qWC2V!ngp6%Lf+F`b9zxn$S`o~dTZ|NFh z`b!Dq|A2N-yFAV7XPrLE(FI)@)j5HIcKA zejiVL-|`-}rX%m$)^&GPUjM+;!Kz7lQrerTA0*=E_Pj*K2gW7qyL{ARP543N0hG^H z|1Jk#HT|Gb@SxEL(`X0H4{Nak)IS{lnzVz~LkEIknA6uc_zmxvVV4Z{rv8a`??4pg zi?qWQ#zkXqXMa!luB)7p_YhZJQ?J4CD`QJJqM~lPhQ;PJ%o96^`WB5JX8wNE^+s%2 zUZ3qMZ_4_-+M_!CMD146^>xfkm7)u#S++Y7z5aml-2?gl0dUZ9@#!d}%LGc+~u5WuUU* zpZ=X8>B)G1Ftn0)EWj#m04p*s^iIyf2W2-5u{WS6(R<9BOR2w&-1D1y9*=DTGhJO{ zE5n%h&w6gS z+fdK*p4!$@b_u`R6Yq`_KZ}1W?l{aDUokEds-8okJHBz;M=;ZMJa!R0;`+_7QhdF*UntLZ zZ8znvuJ>a%I1&pEc3(=bhTS{d<7Sw`P-M9R*vzIFngT4ye z;n?gtKI!pK{yW9glDJXopnub|-}5!n);k^q$D7wXGwRh}4hO26_LyZxJ^d{7l<7xn zLm!0Y|J)FIGdzL!`Pm0(4qL}>j(f=OZ;(*N>5YksQrU)%`1NrO;kfvtag|{A_(P`b zh+i1zpnTKSBd(x%-%(R8!uvW={?0W%u4~M-f*-g;87-0?M@D$Omhy{l^0crvz>(h5 zmhww)fkW+6RzTNqc2~Pka33vaeSsOmXIpjf$ESU)DK|-+w5+lQS>nrxW^_ z*T0Upott@mQha&mQd8foxJ__qd_ku;BtF4;9#)5UU~IhKSs}Jzp;Y(B=@IIG345m? z^?k*A!s^O=AMJg^ly`EvO7|`dPOO`hh~INfWKBf&-4iKinOf@iOA9>Ww?7&E!~>dI zVCQAmzfm?nM+@qG@uB(V9c_YpO*?$UxX|kjBA;b{^8en#*W>#+J=C{Y!hGi!@VkU- z&I)l+QNe@-&XttMCG2u$!3FWnox|a|_$kgG;q~|x&TEGAofUciHp-3Qr1*u-N^uPf zeQb4Nf8%i^gZf^ep7rcyo?^^*VNZAKP4vJy>qmDcoR}C&dIvk{q51bjM*s5{{?{J= zy(Zg8|0ZU$RyL*E^sh)Z?a&+uIJo+f9!!BNsp4hLl54I+>YGi zmpzg9f3^L;`on*({MR0TW%r9Erq(QS2A`$M8QryWZK@ z(GR~(Dc2g~zkB3d=J=ZOQ*rAm)?`1ctaH9&4*Q!`5hp_eMYA4PCdxJMUB*~)Y8o7hkcDr+`@b8;v8nZ`A)D&s1tK}9ik!>@8Axe z2p)q6oP!+?d0utb4~~wkpMG^NFn*?W>@OeS_000!OK*HS>VN;=+MI=R{t#6@{}4Ob zqkE`-^zOFWLuZmR>3k*Sn~FAZh%Jrah zcWdhJ@=S3b#=a|?Ry{or^8C<#*4)dm3%~Utp8G|pRoKt-`b0j8$fCc8obJMF^mkdf zpE@Tve&RU~@I%SZRNVEh;{oNlJYT1jMV=pJE%oZ0oR_#T?Te2IRR~w)xs4+8BXfC96QV+gP~T$Vnc;oBo;MPS$Zk$> zT{7#|3aScQyMw&t2f&?=1&&y6<^9@cbjr_Z;*1{^wkUV-!DAhIZ&qdB1ax zX_qbd6V)Fcrl+QrWgoSVmF~Vk{cEysoJjrektgss{3eY;pM}@)+~szBa53$$+LPv= z#`E`E>8y~HuVs?$f&1Ns?S4GJhP#1R=Ue8wl4J7m+@{1me9dz^yYd-7r^|KAagOp? z`hoU?OQ*h{^rbT^;AS5;6@7KrTJO%o^ZQvhtC= zpkP& z#q-a2a`+Qr4o`wl@wiJ|dt!R?{9jxTVot;Uu8A>~U@O;v7zZrvsupvL=g&)dKdA!k z|Eg8nU5kE~>3Pwrh2HaX4qy2g{t0c0e8uyI2mfUT)Ommnq3dug{*uPQyF1gh#k^i8tw3tdgs9*U{KW%#?s4mL zcLa9f{D713r@enY*Tw(z@B7e6^Z#`Zo;B@}7C0Ze%`4vo>x4gqmx9H@wc%g!F6Th( zw)yduoGakW_`If^6u&R72jyUVv~wOzPP?751^si$)6=@mb4O#>9fi&OE&R!hqbKvS z^!mU2qkWAX!ajBAT;wt3;lW?b?|3FGZ#H@}a?98!H4`$OIj}EwB;0fMf%OvhI)kux z!e7pJVSK_l=XN+W{c&nX#{XjPRm+3i^Lz4GlX<=?m>P7@kN$i9liE}N?DlXPYClEM zAjAs=SJ3+C<;Y4?zT=$j$iw)W=!`f*=$YEFV=L7!nH5*l>YA}KxohYT_v(yv`ukGv z9&-+eK2YCEn%pN7!ed&*#4ke98d`RfIB zUNc|dT<93}ookmde!ATj?qu6*B|)Xe0L@ln220Y|7Y?|X_o5986? zm$_GIE%N$>`%@LaaMk{Sn++A$anAQCykTD?(o^x^KM|2nT#fxJC-Tq>+`FeZ?!WCn z$i##lY~LUg8{^ZyO@@71lyd;z!knA~`wr$Jud~kkLZ@vJ~{D}eZhAXerKOCJWP9N|NH>$BYtTgH}}Zz;-2Yi zlt1U5lHcJL`=H?_d%uY%TW9a{DWAn!?z6ZK-{+p%8*sV3Q<;dl=We^$dHp(a&V;w^E1bAjJ6<#QDL=6P zG;;lid)Fk_e`#OIHH!1y%HQx5a+N%DBOjgX$jiB3$uS@IH%NX3I1ePb6(qm23qu>Uf=V&62pOn=bd&)QeX432*19$E1i_f6^b!;Ay*fc>N4 zm-GXbchV2;!q4aj;-~ZjonzT(A0p!{`%v6l^#HEno>Flo{orr-p1qq4b=Ya#Z=|^Q zMcij8F5v!haW4Jf5qyJwpz<{Of!;rf`>@3E^aFj*X!?P^cO?Bl&wGV?(DnSG_Hy(4 z29bC1Hs${0*;o7Zr5~tWd)aT9{_=u7-}IB~^#A?5ev9#-aeEgzAAt{$^D+1ja@Kf# z%=pqc&B6H&$yMV~a?MM-Yux2W9+GE4(l41(;xJGSM9roKT*#to_CIVi{H}@dj2u`f%pyMLi~zxBJM^X zh}-E0;x_cBKKF@z#Be?RK;OTXexT>QPe0J_S&lw<3NED|h>Ph5S}(mtKTy7-dGrHu zHvK@HK|c_u&=16k^aH(r9Q{C_e~o^i?;Sxu&~t{-5A-{R&=2&x2GS4Ip8e1ZYTrKg zJEp(%Brl)ZzX$o4C67DkMUCGFj0?&4AN1#W_?YtmPxNh;(I2^yv&LyOr#__D3NS7u z*TUrQ)b|wQypQBr0y(MQmduu8Y0mxY_m$xspniWjP7CFQ<;m}!&#;m?_gR7S;RQ|E z!O0%IuadtAEW`VX!ct@r6`vu0OfguD)8;A{=A4O`kLQZH=@2Zi#q0xJ;+f%?k} z^aJ&i=g|xQ!iS6p&7=P^J~Y4O;QWr{o15`0`9>pW>9+#NS$d}ka#sH;&bX9ZpFzIr zpQVwD+N&&b((kIksUZFSO5}Sf4r9pgs=O|-z66ukFODoB%JbnQABfiNaj-%*E1LHu zbFz>9C*CJk;B#VGzDF!cmKm`){Y39C#Pjv}XtE9}f5cPh7k%%)c42cr+&$v^OH;l{ zKTux5-{=SWJ(tmII(Kx2{{J*QX|cE9S9{O{s?Qh5U)+NH#f|n! z^Y@RCzuvbR`Rj8lkiWiX8S>ZnE=K-(&O+p`=gvb9h;xvCNjMYv>vv5<4~Ub{1L6ek zzZA#Vx_LXY^aDM=AN@eTuMhn|{iT<^!t|3K^aJ&i z?#vJB$5EW#e=?8eHRCrg<3@U;0OLsVEzG!*e2der>dzW~>W5`$ch#>va?tOnh+HJk z7~~~6I5`dMfbrbF9Sal53gUuEoDxlh$>e|1InNZbLZ_Ot&*XbbrkqYWk-ulac=7{^ zapVmVEAf5$dpXXPrNNT)3w^#Azas?}p#LSoT=dHX_}G5hJomm`$mA8cfj)@g^{dPa z>OU9JbNanMpa;}nj-d|~&vppANBw0l^MKlY2jgGdiu@(7jp%>zBkTZiHFkjhz8w9p z&n-p&t34K>|Mh(fumkk{bM3v{6s7amd(3mEV;8FbPDTFuJ(G~X+HE}Y7snufaTIz$ z9DyFt`-a({n9sdrZ#3UCh<>2&?Qef%p4XRtpy&7Iz6JfR7w8A-CuDaw{jwYPt3J_} z15FFSk2`3@Q@{{vME#`)**|OO78h?!{G%d%gZHau*jPcfJ2D+j(aR_=qe;H8}(-ZWlg8OIujF61n^CULG??VgH!C65f`D|vZ1?^zStkPRpY$pg?Rn~k&C1O|A$DYVHVAXc68s>Y+a|PpFdpA0* zxAfE)l40Fp*8(5hvknLbq^1XF{)yNLi(ePQ5 z-=Qk!!aJGwwKfcMid=sW@OjZge%SUfmFKjD@nn^44J*+PTEJ5DNA;7!%sc8|xu{Pa z_|PtA`ok^cum12W<6r%iT&Jf0euurQ_B(*ySG(=R?o)ehVZN8VKE~cxKX@OxtDTlI zze~;wS?~W(d6PZawCA+{J+60}b{>y>)vjZZufF#+&zntH}JUc8W#M)_^YBSK})gz1#?`u)G7|Et4`b{^A@Pv9R= zyM2v+Nb}TA>^=4S&B$GHT8o~S{NF>rYn;4|UYES*V!vs;&p^)Nz6dq1^@U;Bo4-pgy7J)2#Tzs6}7^ngCsiGC1-9q9-9-sjK--b4~6x(zvC6yfctw! zz=q`g7zrEsdizJ2@)I`Tb(QOpEl_{2O+HY)zZ(5y7!1*mUV7U%WZagAuOU})IPI?2htlqvUkB6P`rH7he()mguJPX&O8&i}L(FN9moq3KA4tCK zd5-2~QQzB+-=TJJAa9LlC-T<#NkrZqVJhy>g7z&5hcIrQfm&aQy|AP7dJpXC zGO!!#ZS{*TP~SuT9n%jw^7jPF&+&fgnGV?Fl79!jNAhpaysUBB0sUOr@FOGl4#-LJ z?10?r7_R4LGQEGjPxEej4gLq)X1^}#{cU-_^k5sPd0W)?I%&VIFcEq8gsHTv zBaLd>JLruvsN^G z%k+aLd|vZQ6a4ei15NSAcnse)nx1?W4&Mnd3>d&qCeT@y* z`I;E6_cb-#;A;k3BlrKP*Hza0M14-w_arf&s{PWCx5l%DK9`(rLKv`U4ULS4# z-ika>D=9alKfDJU(tnn~TJ$URhcM4q|H?rA>UVMc?$_Wm=&d0zH+E_-c*l-0w(` zhkK3WAE{xFGk(^p+-IxzRff4?gxA$SBD_!iA!1K5-(T6DYV<-C?#EDnt7^|S^G$X7 zO9thd_~rHcYT=)az`FD|$-f@@qb_WKzL2~c(H|to#@KJoVH5g;`gv1+e=FDwJ<-~5 zy#34Bs-LmZ$0Gw zKIKNp>qFQSd9Q;lkn={^n*9BnVH?gLeG1!==V#0RLA~CVypNy2*7S!Buo>T@?`y#K ztN+xXpXs>)=9hUe8GSSjmPcP{J}8LZm;4_x?t8#1_A~xx;c?b?(tA5u&r7eaVg080 zUGurd`B?0zBCtQ>Ef?&>c$J^LDe{s(tcE?x?B4~*b1lDj26=DgA5FIVnsPk(FtuOh zg7T9(d0l>WC+|~#aoK~6pFY7JYV<^sJ;M0sQpuaF=clv#D*M3V-h>or(=R+Qz`k4v zhUtHrx2vEh>cHyw>m>i0^au6p+UN(#yDt5q4Xn?+)D||NAGC*!(C-~!W8^P3MgC$l zf&`0~uhe76Vjl0U^=h8T=hCbK$t%Y9x2-Zd3l5a!gBzZPL-k-zf z$a@EDg`6|tvz)u#1KVz_YLz*Ar&{Nal)7X8l!6^I@1K=Nad1L>b!oHV&+l4=0<7hSOw`4dQ{VshxobeJ3 zpJ)F=@@|H_US`|-IxsY_?hANhE2J7 zjQt1hJCz^3fc>oL7lrNT%)VeTZpD_r{29Ji&n-j$CZ1M;|7y2U&Ci8oI zFx{SM>@*Mhp*Cedzqb(#F<)rhSHXX$@mw9fAUW2gA3O(Z(+@hqy6Ax}umSSd{N4z; zi%pQbUT?~}LiAymFNGo6S>vrT^RC*x8v0jqu8BV13hN;6?XbRYw2^NkOH`$ zD4w`okRXyJO9sh%cK1v;XHQsI*j-@B2uKb~keqXp43ZSdQ9%AgK}0}6a*`}rBqvb` zBA_5hko*4H_1^D(50Ac2&(4{d?y9b;uI}l9jcHfSD_3;;oAm_|>~AT#=0kp3$B=>V zTkL>Ood7#fGC$;a*@2vO0ZxSBNvE8dFF)aU%z0<{yMA}x@tJw?>rU9rgWq)$j6OYa zYMA?_Vn0RcTRQYY{v{Lps7nvtW`D(kFfVqZ6fDU1QoXP^{v!lSyAzH7@?aO#|GoGL z$=}EPjrx56Jy5@nrG7189DboSj7QHE4_8M1AHXE!FV;Zr?O`p(FDeK4zTTHG%s#BL z*AgvnAPQrSTHyKLUw@N zCX7B8Cw@qxT$;F{4va((B!3%wp!)mqW0HG_@r3+f1?+(0p-T9HPOvia?*fyMzgUBD zjTpwxs$W+?-m=dXvA>650`iuet03>QFbR1}zSXhYS71%#eFN6^ed7NK)o2e#{56F-UXQ>3d){QekRrb^-snR$`n~ihfqs7khKMhA!Dz;P>tQkC6WRalj8mq< z7jCqPPk(arnEb;b;(FQpFNo(YsQEL=y)*qo{Vj?9bQPAS-)TL|n{IjE8hFkr#?Baw z_nnO9`@_SXXYL@%t(?1VFIdgF;dX@~=aQl0Ty%R-cAd*^KNxmyy2D{r=N>y~VdtE` zSV715-bu~Q<>YalEbLs*Jdcx~FBgz6M!zmVzPD=Ph{H~t(SyrQP2(4ScN&}LPK8}~ zm*>yGce7;&vh#hNFwBP@RE9;c2en~IcbbuZ1mg+WdyBZWE%f0JB=->G1<5xK`O7~h zVE22%D)f7?8u>-B0`fizE7Jc?!vy4g9#%%)S78<8eG?`jZ^^Sd^1cUaAkW`nP2~I# z*78mDKZ3RYU;cOezw;)W-&I5I(uc~#ebR$C;{J0mfW6mqL=u0f{};pFe+Azr&$s}- zavd}N`?4g7Lc_jwg=K3)|5zv>ql--=l*C@Y`G91MK&FxCVKTguNWz z=!9|3Ikz#)=j?ZDz~}a6Hv!(Zzj7U9$vD)bgRPa_IkH2{LS9xHixh518x_X z(>db~g=Nu;PhchIp)32qx3}5J8vlbmIRGa*g^eD3?nD}Uumyji@x%$Ix|z?v+jfe_1`MU`!`q>IZM7t$oUDZhBbVa!soC$u>OrJ%%`3@mf~CNBkw^y9nkxqobV1MozH~Uohf$ zYUdj_08iMTxh3Hj_GB^!*n4{<86)Q7?4fuT@_hCXMikm#XgE)x_3j_xdB_{s)6MTU z*o)n2l#ko&Gzst8d)?mfP4wX-SiG<{xjI=UYyC! z$2vZfozHdtbi>M=uW|x%*Lf9@dn#BSy^?+ek-PN3!OuvqB8fL-S4z;|e}MVv?+0Ke zqvPO`T44FEOIXno8u2<=e=$_^l%e=pXd7? z_H_!FIB~iYW&FWc_=QZ=>xfgwOut3%!XysK(#l#tumS`T5SSK!@`U^)c*F!-t9FP?FLvH4&5RB6{#Je>W!Cpud1x`# z!&`Z=n0n8r5O*ZLx5|()(s#OiM3{^N?JA5gr58m}znuBq2IP8H+NPB{%t-r_EHAV_^v zVF#rDnHeuOfO+r($*>51PjOxu;sEt~Fa3WYjGm>iod=>60eC;Ojg(a=a@|$tyWm<6&%pV}IZWxg#8 zTaXvY4x@>eZ_r-P9NWb2A3M+8!IX5PCKtmDoo*u%QuOf-ML=gfxFtu#c|khUQp^mpZq^F3 zQi%8gy-LUZDq$Cj!7euY#=%+mmu7H}y~!O2@7X8ZnJ|}g+x;5GIP6abQ-0Rde^HEow)+Ww*=JYhw%$+S-)+NBHS()54zmuTWY+4mUY ze#yN&c3<*Npx=*&Nwmg9Skt%2$g2jU8Og6Y-&>Sit3kboP?h63V4`oKKPRk&K8WSf z8!>?W*Z$fL{XQG?kPnc)l*IbVE)>Mh%MRqAzsnE2iQE-G{*BkX2=5~I@8Ee_Z7tkG zZ&JTsPOJ8UZf`CtP2@D8lN_gPd9B7f1rf8>E4;zsGiyNn}rz5L`6WIwVof0GubA+D4BpJ0_0 z|NTt#B)@-#{LN0dgL#_&!KJLj9u3E_u10>X4ZT(IZxFwi0lwu{F?qS=wATXK%XUt= z$#APZjVocN?1s$f60ciDjNC_B*G>NpS+nUu#23~FPBr+5_cX)so;QJ()_$?I>2dfW zs|^tt?P(1&df`}ejULppwm2VhyuJ0Ku^VHomyYbga_qrwc-)FGe&Lyw$ciHRA$BJ} z&(nzbAPmRbbB!I?Vt-@C3AgQ2uEry|o!?xI6Dv9CjUVg8_}~%cPw)e8QQxn5+M@83 z)6C4*|Bn2tP)Gm{qGZYMJ*=qYTbptLSi`rPozErzRsO;--nYy!7JHzwA3vbKN8$JL!;-}J(wF?i z_0pqkn-Dyf!DnbBQeH($Ug-0Sv}}+_%Uk=Jx=}q3#U75X67c!7uE!ZXbA=xKR0}%+9aw zMi_G5FyofC#Dj_hCgRuLr2b!#FDe30B7YY?;A!Ol)4Rh>-Zv-nQynN5VV)VpGZ`u=j_7sDvnKJJXZl0A#a`y-k?8Rq+JF(uiVe!Th1Q09h`2DHsiN~ zc4Z<3?E{(#&xbx^w+FziR%bjYah^BMiGe?P{Y2W5cXh6a-$34punzC}H--JJLrxDk z#rnm>1GACyB+4_ar;fgZ^{Ms3nPR+{yyYeXw+_Sz#uqkhS zNuG^iDcHcbm7US$7dHFL!fNP)_PdP7E{Gxgf{uIf1Epa}?7x2h4t`&HkQuu#JMz-~ zz}SI%ZaouUoTuOa!~OOltzY08yrjna)3EoeVPB$a>1%yjRdzoT|K`9n9c@rrl22E8Y5(lkKip3R{LHuCN9N5OhTS6)~HYbz%B)*FV%cI)ra_yL{&F7coA zB{%Yy9;7FqEWhx?ZENhnO}Dm*D~~g-(>QQ5S(IP7??SA#b%Sj%Y+(Ue@jJ^NGied$c_CL32QS_dDVIRPvj0+V9*0KBYWf9i5 z%l;Q25BUwO>0~l-%|NH5d2jD?<_oe?|AS5gvu@}fQHboJ{C+){3%f7BUyOAEvip(5 zdy4Y|M5U8qJobJTtWF#yxz|JPimw{GmwYQ=E23ldyAQ}hNWQIo$NUa#PPWsMs|E|7K6IAu4pcFIqd zV_m7n&3f-vJo{1^6kqi;!eQzPd*_?@4)ZYDd?+&@41^_+6Z{=nF! z_Vx&B&ieq21CTB4A zs8e$7fc6DpYod@aY=&NFKhyeTE6c-b=z+>{zD?|$F8{yUukR<8APSe>6tf|{ojuK z)4;}+FkbcFUv9g^AYwy_BdcyWoC#tn7lxF{+^ok zfwGqwVhRLi^E{_w`tn5|?0rmW^ZmZCzgCRwp`UrDiJaGmapx0$cgV?!g`_aU zFX-_U3Rf3gRU$hIq9yo{HY9oR>!X*{rs-ujyReoQv*I_!bf z+yU$0P35N|$!AJF8HxMi;SokvX?IwG9$KK^i9?R@GX8xu#?X5UFk^F2n z7{~bkALP-^ZfC{?X`B`2@A1qJoZ#=}nP=Y2b$?~{Kyl1qq+Jc>P_EaO^es(`r9w-j!Vc40xaskTY828(7t^GeU-*Cm=ZQ{PH z&J`2C#F4L(-|yz+HF5tu;{At|_c8j&!u{?tYAFNLGw!Vj^DxfSc&{Y-*abQD7WK%2KBElj7lW$p1jY!4faP{cf!HULP@^;nU$;pd(z5D zup@e*_DCk`78~-EVh!}5Dy%@fm2T$F;{s?%3S+b(=5VL3+ z7px`zQ+{zez4amY??={MexM@> ze^tA_&H8c0Q9H4dv9K<2=&$_!l#?F~S6=yq+Yp{)-p30U*b_|N_hWmU(TBP8cOBn^ z+?9vC!aQMHn92Fk9R)+qpY9UaiMT^~AI<;VfV-W_=Dpls8Fl98zUj&HYP^?+d7c`u z6yrPDMF&4Ge_xStlH#Qr$bC9|pLOfIdK$tefOIoVUSi!a-yoYQtWvVyX)}@%Fda3i}{7U>6Vly()U3^8<_*q%WlzAId)D zVqQRckczy&^x&@B$;6kZ@dN5tTj&+p;b(Zq)NmyFc$4R7$GBh5R|R`E50)Xm=?gQt zT}`}ujeb#z@*39Nq=G|fzss~+9r9<&pOj*rUVi#D`Y;$?u)i?#aa)MHqz|9lqg)SM zVt;7zMAz;4ZY<@V%-0TqZ<9|{d>P03kYAve^jYZ0J{-;J#rNS*;-W^dFHa|SW_J;>724Vm z*5m1Qegg499q2G#tPYEjCz4&r!aSnlg{RbB`=edQ`^nB8bQ4X!=u4vS%#^3`JkNQK z0qE-m*qnOFF2_^f8L%w#8@*r-=JV^omt<+9;6<`I+2OZjZ`6P1GS4f!(4RPQ8?1?+ zki9PI9Ct^+r{vu}fYs~&}uSr2^zP9-~j2F_%*Tk+Riyp7~JlWcPnIE7JXGdP~7Y5|!O zG2cNQKos7Ja#y^Rj<>>3=)CvnC5>S`_CWgJMGtDhLcag`E5i)T14|Dc;SZz-7s-Mu zKHN*zPI19Xx46j@e~LeN%JU2)EtRK?vIx!C^fANWv8xKjmfSw+P zSD4pR9P@_T(%7+FtUE2hbC)FURer~1Jf}D>fq1wLtjoI90kAovP5Jo_tb0&<^rD}y zfP;8{aU&eXY_{y@1mvxLK7~=raX5qbpU=X%jJwsYpW&r0!OwX=>M~r0w`qF2B$Rc`GmR34Un-{EB%T#doKf zT~OZYsZ+=3V;1HurJqHJE8gL`qKW5i7{@5JI;=%@N&4NCtW!VOo~*`4uowM&4je+B zT>X6v*$Bn)ldzw=;dEB39D#G0bvO+d5|vzl|0CYI3Rf^2bpx(;qx`qvTGuk`u+|f0 zO5ST}Ey-1H33r4`S%uaGen$4OE1b#Gc7u~yttgH}A9TDg{-P6Xk6n;{G{Qf$hE<5N zn?i>;QFfsy^Gfm$naCGcgn!`|lxMhswJZz2XI`iv+=@31G! ztmpk6E@S>x`tS*PrsZ%HenjK*Va(6Uevfogu|h_1Kw85Y<4GCYFXt8=!4E1O14_R>qgul zy=h6UrBAi+$}M3m`9;}u>{c`$@Qt(U5+Md4D0N7sTIJ;5FnYJAItETyex<;xzT+WB6_P@3YwPb?~O+nmF!>Q_<{~mY(ls zALn>Z?D{oWjQ2kjmv~vn{TBDBNM5rDtmCdSYEoQqQe$IqRWh-`9|pR6k$Os8;rTGjf)^w;|sBjtrZF`CW_ucII7;Z>r0`HPFJy15I_&>rds`)McT6}}>_SOjMh zR}6;(i7#8iX2h4}VLbk#D2zlO6o(Zi@9+q@HIaTXD?{#=_^T*3P0b#N{IdKdhLEb=k9ootuv;2uUFvgZe=zvO*{_IL=tC*S%6o+Nwy9G)gi z`VyWcYW)ZPz-l;At6s&cM49T}msw3R0A8e*NS@~?4}+(9+L7>k-Z~f!wHjj#+{G-k zxQW&2;%c;d6kLp*7!GHk?YfTip+6kR=>1=P_`@%I(}etj;)d$@3B`}GnJgoe=-pelodve_%97^1#@%wo4?JePS?2^Va3-RA$;7aV)Eci8kdjwBysmb`DnvG8X&9^PPe`9ydbFEt6Cfdom6#BRbdh<}!;VdohW)Qu^>AZ$HRi^u+phfbHl-ia#4Oo{*oY zP1K}3LuK?r`cR&E$nr1-dm;N^r_4Wj7^S^Sxg_zW^r0Z{qscyGK`+z}FR>eHuU}Zr zt@!8!c2o9r3+=A{_CNLk=mV!BpJs3j@=Ah(Ssx?$^<#EVRc_lnh`lKU%KLH+k7-tr^(0&gUF{tZ8Yf5EBn5z)ysc%SU^4EQUx6R**m z#2?WQ{rxyui%;QxT0{D=m28IeXl;s}Si-7C>BB5WKk^ro$g*~aBZ-ov4+F?cNgsL; zM@Sz!kbjasv?l)~eQ4@CV)UUt^AggB8mwQCeW;kSPQ@l$mxFR~@=$7*Y`!jLee(<2 zQ~l{zW&_mE&XR}t4DQE1$S!QgUnu@sOMbdNT#0@(hszjWH%y`8h?R^_8pAc@QCq?F zDeIHJW&9$2+Qaom!o$c}@;-%}7sB(%`Ac{mId6x*vT99wc^|u_@!22r-&^o0vm284 z3*`DY{70)ss7Gq@*6PP^u+B#EON+i|gz2bfX2a1Y&z_F=E3%mK7}Foprj*mLE>q{d z!TE}-vZ9redp1^EO77Wc1<5NbZ+%OCS=fz1a?M13d^XHLc`i)H-{-?r{xN(p9)Hbh zV(~Fq3LXCqJ<)l$d|l1&E)nHSr+kW5n*tBwM`R~<5MPXj8;Colhw_%P51$iH$Ue-) zUPvFN5=BWLCh|6y^kEdqCN5dw>7qSc0nXgtH86duR3znkZ zvX{BB53;9eQ`VjTMO>uu#9iVi^~)RB-)Zn7S>*BXN5)a3;5o+4lIxGy>Cx~4ajC{< zS2W=Z}BbMtoY zQkb2$v{lYXYv}K3(U-;WC0YH2@G+~B=fU5wJG%Z)_!sHfMXay<%W2+99|I5LN2CvX z@gvfQt&EmrA2u*fZ4Xy7JJtgJkNBbioQpTE4nM(e#KDpH6U7aEuotCaTe9u>VSS?b ztT2I5y4u&JUDeM@`G%M{x&W&I)E{&B+M4(=Gy4{8r2HoDov(%IeD9m}>FJmslpjgY zdRE!*x7fEx_9QdElO2DX{YwtR+`e8W-}VmuR{B<${;GJbIC51yUXpp!e_$C#lj_&y zSXU|g>|sezNlxS}!>`XzeWMvP*;H78gMQ|S4P_<_o}>wEx9Mr3)G+Wc826vovef8U4!WKOH)1=v(EheV9eLBD#zEu zM9vc{@;fmWZ>RHO$X=|4R*JrO&@)}P6mNOzK1J9K<}>&X)^`rfiT#j0%EYcOvJYwf z{f)nPiC-B)`7!ZEZ+M6CN=JAVyU`M!VbySbcz|d;34Tjt*ph70yRaGM z5>WHQF}LJ z*9NtJ6W;1qe{W7SD*3b|YEr*WM(e+Vt?3OLU|X!_H?R%a!W;Tq#56Mowi~Sf6 z3lOi2fN%Q;oAGOUe>an#d_h#!mg5hw7fs+z;!oLyb7X%K;bHPvVW_u-ZTL0uMOnBK zd!cq-$b6{UNxP*>K2z~0lGkMNo9dtAiAQt5ab%6eF;K@xb37LuMHWc?YZT|d14oko zP(K_=_Fr-s!K||6GMxBD@*0L7mV!gcQcEv2FR$kr$nkQpALmEF-aLowSa-6?DtG4k zVtekZ^V%?9uiv#GTTvP|L0_aF4bTtOt1k0((yJQih4icy@}3FXB8T~~1KG6CVHf1J z9Ck;plDpp4lid5VdQ);AfOV6+2N6|og@eh;?J)c!W@id_nZG}Z5eE|8i2XTVfA2%K zW;^V`_4NC$Twi+8f%~n8ZLqSk6D`PYu7r)rdPyJNBZ`v0sD^&%xhvs~KZXJP%NQ7m z-H=^)7rp2W^Rk+&Bh2LQY~sgM{^l|7Q+~{NwI;kx{3(67Li`yE&k%q5pmulk!oAoH zweL3K49Vpi=E>BaUt>okw=c;Wsa?My{!n=()ZdqrHIO`)Qr7R5Fy57X7E{*s7E+Fc z3n)iJ#V@+wEPiLh>EuhqDa^Mxa1wcT@gwHp#L>L%s=p5-4z}PRR*mX9ebJjJ*d0BS zo^(PFr4Q}U3+Y2E^g_?s6gwmR>rVTs-|H=0^|OI^v88Y*QRyl;0y#?#W09}qKAxMhWHa0dL&Fs-4Y80zHB&W*p2e=7H^-0;8pY_2A(HdBt1Dp z+~L9#=#6+3evB>=ZE+Z%*i&@)|EyE%*6#W@UDlT8v= zV4uX#$+PS43m7NsceAipy3SPeM%SN2R!a9Bi+)HiMqt0BPlI@yKzh~(J0tz;PF7QT zpmko-gQ3{xd2kf{PwhFLeyM){G4fWwpGLMp_IWm5?i)BC`E7-Z8C6T}ONmw`zZG~n z$#oUc%t5#sZ+94eNwj?=g-8D{>i8PYI|RSrcL$)ZBmMaw(UJ5)_mMu#M_*(gW}zo~ zo+(6WU%&~>Vn|;{@cgn11Bk|E!fs?sWf$5Ke~f{RiEDjm*oFncf>m+VRuXLSF=u;)Q4tB9t8vC2M-W?Uq@Fcf`|{ppWCkseGUyQFrT zN;@urvuW3rP|>RT{Sw+;{eC6U%og}1@{yfikKEMXH?x{Ya^H>@lpJ^YbD8fm?jf4` zp7MUY;Bj~WFM1Ll#2fy{6Dj5Y{{HXzd5pg7;X2Zzom_Vx+{%5V58rTK>EAk{vyE^S z`l09i96PiE&Si8jJ)XiU<2i6FSzy_PA;c{cU@t~@BVh+dX@g-4^g{Yjk2tg&tcD-y z2;<1gwt+G1dMCYzLO+_q(&S4T!J_^_#%|;%+f$!%E`N`h_h44+NnM!1-#(@ee8bv@k&Tv~oo83i>hKh^2G!sZ=3T17edtGJsNJHa zAKzeKD#Eqcj|y-F{!03=7=I=EFc*E09h!zekseIKK19LM_>FRK4)%2+Ttq)#3YXE2 z>Q`&9*I&W)^l$b1E%Z;d`_2?O>?hihTn-~&$?3R1zmfYHqMYND&kD~9}*LHXi{n!k5 zV`sjGThLEE|2p*Ie~`J{fb@F-dM&#!9sBkPoWShicsLxrkUsPyD>DRkVHc|Yunpss zUa$${UfGGdWap(9N$7{{MJ4hh(vKj!QzSz>MNd3rgPKz=iJxf(3$sg^^d=v1NE7%r z`Xc+1kyXgjqcrSl@IHJ=e!T&FLe^ONbf47>(x+drFVdr{*cIu?k12X_g1kr)<%9Sm z>BBBoNy<)a!A{6NXgAtexDx*%Jy?w2aN%6y6)&7hoU8a?8FF6)*U(PO;0D@lHQY-7 zQhV;9U1fLG&fDN|+I=@XiyXd#7m1Q(=dY*8>u2OC`Q0JvlsxYf&Hex%5`~KMGwbq~Qi=*xci6VbHn!WDmkz_;)R^l=0H zp6C4%e#i66E^I@OWf#`tzvjY~*th9$k^fKQCuWkBkv>d9FGj&p#1|jJLBvOcU{A)i z{h)TI=?z;EXY_!L7{^LK>R>-Q!zA8fm7Y{2?r0B#?4H;TTKF01OF8nWtzmKUrmbLp z>`4ol!#}|2OGb9%l%BkS9g%)KM=zuwkI0YJgBs^bA8wF8l|G!uzsNqEL?7gj4l=%x z9_+$CNDnqK?;?A!mUtotF2^o7a3S$)H2fO5t6jcD?#tnBYoo8y{O;+g}hF|7syfl`!&`^@=b%*oriD6*nx}iEuKQmgjR}K zQkWU)yv+Pvzstz^x=seHm#&+hr`CPmh>0}!eTAM#51(>>>E%Q8LV9`!yYUUYfn8b$ z&--&5yKo%)CA;t)S)b3~HsXvqa6Nub`ml=GWZ8$s%$mzz%)(xbg&*TbM!+$Qd!-jc zczbm)?1MiU06Q~&?F-v5j+TBjWqcz2c#phFH&_k((FIl{&(;YBupiQoXvVS9kJ9Lc z^rJ9#Lwb>$I7E7(*@UJrjlWBZKD04*;t_tNF2`?UAEXEJ8`6Vw%tA>Iz9&qT9_(k9 zN`7HGej)@n5MTP>YF|#{4|ZVZKi7H4UH#-3a#z1Oi`*su%gB8TyoKC%zmB zN7?EB1;Yx?sEm=5`zhMBnf4=`JbJaZAHO3wL+QZB=SJdIcw?YshuVy*t8j;pNm zi|}{pgQ8>EhXPo$GcX_5)BSRBeceAR`laW|fL`eNQpc1v&-)yEq38btzoPow@fS4u zeT{fT^*x6lQ~kfE-V5M<{Kssl?2Yu{YsM#2;7YRcli(us;v+Z{y%-HA6L(54MiWPW z2nUlV84P>jPX@w{=tV!+ie2@j7Y*6ft|zQTUR8RLfW4622$6@C-LUW{AHXu~a`~@5 zj56^@F5(UOlT6r$#xOOz9yWl_h%2NAzcX)N6aLI>a}vD7xFr!PzN`oj6Hms%-S~$X zxEVc=9XNztRQ*p9SE)VD``XK>0RuSNlDrzf1m4k-OUWHF8&br;qWN_Rm85 zOCCA7s^s$y@{zoXAnyyX1b4p#%b<;tvxld;3Zsc?MGI}c1|6arm2Jv8Pt@-$&eL_G z`JL=SB-fE$D9d$E!V=s^{-H4UJp}Xe9EwlgMjv;=w-|MQ3sc9GHgV%K?8H};A7CdG zFZ_(1SOza+ClpUK18MXjS|EavJ3f%C!`12 zu?vl0di+Fv_>w$m9ry=vWes=-|4oQ9_}waD9Q6EPAJUt?SgrD-mNeT&oBR=?2O_Z)o%^_13gze+@b#R6W8bmi{Lrz zq4ePx{Y3h(7kepvkl&O(ur|!-!!q(0@*DHXcS#?nrs%`C6nz*$fxFAKs(<8a=25 zpP&cw2lvne*?}9_gE)AeaYPs%$1nKdCG4K$e+xUPdMn#0`9C49lf8U}-P{b*koH0a<=vzQDobDVcj-ZGey8i!WRxU5NJ2l(zy$6iJt)t8r3W$8T6*BcPDl^R zpbyf6qUggmm=}H61hb+Ks&9JigX;eheOLwmL?2`qqz`H*>BDF62lQbsJc>TdgnQ73 zX;Ah-@q_HcM7V@}*+*~=<7@c~%?^!#qwp893j@fvN)Nj7HqL+XgY=*gyI)EVYLc&z zJ*b2pw1e6WFBwKKFVY+qLk}9mJgi!f9mtG5kR3?vZ)L`hPw@+tDc{F0RDwT|hlqt2 z$T!5mTi7|(>pu08{Ga#>n11jNeqQbIW=shq|7`fv?UeJzM49-nC~=wOUm7hs0;6L> zCNA?M_fwQ(X@B{D$>Th%hJ4g-Yx7i>VSVH%c{bu{C1*u5VhgnR25d>Rt8%Lps;u){ z@^|S^b0~dk%I|f3ji#k<_0S9HK`rhleXL3}B>k+&^Bjah^g({XLQka!WoZTJK~eNr zdY%`(R=u;vlrwpSwCKJ3!*l$_a`=dTu>}6=eVH*I?6SPj zzjCQ=`fFq4B)PTVDJ93&$W{Hj9oj2-E21{=NgY1}|dnc4vlwVNRR`o4J{3<=jiCtI= zGvX(t2dU@}YNx-j3(^DmN$J52`j7PBNBWcW;HW>du?M>uU&tPO!}ww%{DSetIJk)X z>L@q^Js1YZqX&cGhv-2+*b93gJJ6oEQFfpy^XwgA9sGjqKmze%D;Oj`Xa<$PYzW_F z-0&XEN1Rv_W?`4yB&fV)0({1NSOxey^Q1xe7=OPAzM>wobLnG>n0jWVo?lVUOT9P3 zqQuo|pEC4&wU?KEuYM$NqJCA8esvTo>#2TMn|^m1Ho(ry4m3j^>ZgiQF2WCxm+U|% z*ZAY>C(xEx(#l*7^Foey{U&y>94>uHTvK>3$#33cA1Ur{`%( zYseqydE^gj@_gUHM4opKjHOj}Ko>jqEsUUk-@szj_iHG-C%=#tJ1D=9CZ?omufMUA zvY!vIo1ej3=)qig0sk-)9!C$R!oBFh$8a-xFdnYP9*lvDi5o}28RTJyLhXtyJMba% zqp}0NSiRaEen5QC88&4+`2nm=oR|y~SWnR$2FO1(f|0CJst1dcPpAd+`n#GqAPafO zM9OdY8zCv_K}~9^xF@gC-!!}rzm#(3n4+eBxv8J@zA$!h11ybQ+ybNN_i881rfIi0 zyouVeD*aw|pf-2;9=?y($qqD2vBz!j-?9T8kc;Hhm3}L^^+N8FV_%+La#fa0avnr< zBMw2k#i3AtS6Sx|;qU7IgE(K;>5o3>x{8V={~qYW8Q7WD&~vmy5A<9uX%*Rl#`q!G zfx75{^jLbk3&x=b+n}G;*$gAm1J(as^g#XL9rQrxe|*XM=AOKVyA@vHy}?Vc1?$cd_`ANt^wj@4e3|#o^nT1D*1=As z{3ZJfT!MpGSFiW%M)N+?SjsDSua}%M>zyx~b<`a=uUE|L@Q?OAH-_uw@;# zK2Afr~)9sk4;hdEY1(_4}4_kL=x>th3Vkoy)BM)q1Tx@FXnCx(Pq^-odH@$t^$jQtN&4 z@Eto3)c0EVbN|Pzzb>yb>nb{O{hxX7LF=?{FyAto@)X|sDMq;i`yTwm`O|$%&3AB5 zFdwUR<%Rr}V|KtS{;DxrXSR=VSWfP%x5)}}-`iFz^Zs%mDud0+@^E}qL3;`N7F3MN zW3Ph_>(k0`-Zu|5|Jc;aIyAAfiDyHN2KLz>) zXQB@u2j2|6hARWH!KNH<8+aKgOt~4oLH#o$(klhqu>Pbgtie3@=dgU}OlU|5{SLke ze#h@-2NHtSUPD6Flrz#zHWzjLKyIN6=`VFcn?r4>SIOX4 z!BzY{j;AjLwdy7c#`4y}Vy^Qz{4D$%zZ)CA6#h8;Iy^d5B)pB^r{Q<%Z>6z|s()&t zqMOvecc4tL9LK*6Gz)$}`(6x;56+>yKF~7Q3jQ7#6&wi*g;s}JasNr7yx~)DNGMJC zAUqYS6Mh9phhBxQz+~c>{#?IDbPc-}^^J{;w{E)F=g1`Mci1{=pH-COJ$MU8dfb=y zp7$aD9jqUh-CN9i9eAGC;aP$A zk@M^DSXR5#=Q;oT_cHu4{6gpR|DRy%@R#8axX$dL70SeQ*9KZ+cNi}O4+dAj+QHw0 z2VlM6%iwLeC>RqeztHD$SLo0XRC8DZGJpJRGVKzR!K~g_fdkTqo2b`~cQKi)wJ*{g4xW zK{+nCHF%8sw#078&d%UHsNCHD6Yq9g`|)kyy~fRy4|{(1vQta!2+ujgp0G1zu`m48 z^Vs_-+(Nr7fww(g>i~39^kh=xa4R47q9yz1)Z=;w8Q%`!e#QB&(^r(!d4IRF<6k^c z9{Vi!ofFmGPER=)Zibv0&xQX)?${~w@BeF$7aY@nZ-u*~SJ>syq0k8GwK3!m--AO! zuR|MPgW&GqPV{PJphU1b_5F*yP#^9eOSF`mavH0g*@rTnx14>8=kDd%;&tHw>!9-; z&r{vA-s@3)JZsGHJf7u-9?xoTfa9_Jy*6y@Iq4nXz7CJ4z0@9uJo&7h&_loZ1=f!2 zY-QzozeMh~8q*##BDY%YDQ}9rX^o+LDDttj0R9!3$KJ{DXI3}&mi#pPtW2k!-VdY= z_UC!Kg}2d@$b*DNh2!CZP*nII>bWOmg)hJZ!RDbV=s`So>`%_0#J&l7PtxaYXFumT z-i-dn=x_U|9@apfcUkmX_Hm9^@yzgMhebU-y=h?vPfPDJ2Rjte+4~S~iKu7FXCvBq zGw{1JFdOHcj~MDLVSYEyTLH#*DLB-Z1kg^=ZLqB z(TB&h!@qVzcI3JzZ1Iib*nISlm;8M|N;?dXTxvDsIcMN!`&0iS(c^9Hd%x1D?VEu7 zpLms$IBUGipi zDsa8?k+D`y?w?4#CD+o(`MUEud^Vznsqd!|u6I1;b`b@=BVc1g`cXs~@28ae!a4kI zL`0lvmt@-Iq$$@((T}0tqFmplpHzg&^o#azJo+#hp2Ti$fe&eiv((?F9n$k$4QYpR zaB1X1`Um-ssJ`}X+TnOq9eX9^5yT;5;Dx9p!_0jDNA~i1Fd{UF`u-EF6PgYehxUdZ z!ztl=Sa{}d@bCBN|3SAdE63GeKcU{Q!y!*UBfspP#zw9ysK=+&BPk-EHyMT_QhDn_ zZ$w&eV{<%%w zgNVv0^)E<$iQ^+)N5{cjv_pvVdLs9MaEYh8_b8knQI7hny$YJ&^-R%&HPrth$1`yK zg4C-Nc2jmT*|Xo<9FE6ds6R*#zJRyU1HK&+TNFL`113lIwhB{^meF(UjL0ihbW8gx z<(t%7{rPxQUDFQJq6*ucDL0QgYvQtsQR}T|{JwM49P2zR6xGxCqi3|Y?z@uqk4E1H zdcO7+pxo0l&-Oxg9cL!a@o=)dIKE+T`Ge-%%AbG%~YEpL9#dn_h0s@+jAyNO@q?bE_uIK>ahq)AXa0T&E}Y zb}HAP@D^1(8LqinPmd&l2iE9Odm{pW}EDtF@#3mfKis zo$>H$bV+-w`m0^r?5`JT^>JjcU-A0@=O0Xw{~6>jy?Q|X)vlhDe$W`ds(uiPnq|q~ zr1dValc~oh;^}9UTShjw?sEMDR#)DTd>u~feQ0Z6&Y{uUX$Ru9=;d}USSEUu{Rh80 zPruj#*P#c)c#gqQx9K;`dqsVLT_vug9i&&ABHJ20`!ceVHHYgT#1DVO@u^W;tfiFG zTko^O0Qm~Ln%SSSG+BrU>_t|hI(?2@PV z;PQDrj`pcZ>wRt4gNLFo+Ocq8^d>t$zbha8sr?t%c}={eez8Bwv3tVqQNLSJutC)K z#;!)97k9b;C-jqFsBb*`sjwz5Hqv?EF5)_s*|$~urOflrvDN?Tus`kzt~-Qrb|QYX zFIn7d)cbW{xEXg0BFpgu_3vgiVaFWer>F?40@uw>|55!@!Dp}({i2|$_ZAZuc{@Yqf{gSC? zT38A_kiN&G?}`JGvHM?eNCuU=^&h_PKCr5A9!eJNl-racCX-#ciJVCjN0bTtMDJ z`YU2M_epdWe29?qt8j#+-MF z{nN8?e3x`7?IybvWRiWy^p49^KF`0V_u4vxe!ssO!eA z)#bY^*Ezn1{c}!o-P6op4x`>N>37WS5M2E%pHN9+nt+!}YwktMU0#_VpUUb@H?S ziQ>vq><`eE@(B0eecAT2|CsvaD83IM-uCu$q*pn;V~k!5imqelpgbjNu^IpAJJlcX z`yuqJ#oYfI`;AFYtJ0s;UPZi14cFS8&G!g4vWvyvoF5aoABd!1onn4x8qe{MZ@$Sh zNAcAg?Hdwnjd0VWALXoMS9!F2Sm~MYHdb5jJ?}(6^246!#R2Z;MIW@!QCja^I}zsc zUN-$>ytj?hlzM#aFHDAxJV@wh=uP5hD|8|BggD8^ti^BKe-i6cJ+LY7&40*sf987_ ziW}EPUAF!~j-{i<7(X?JeO$A1ytZ}3QJmg|_u=#&{2}(`iQ_(RI&*o`9(h`)oHg(r zE3BOX*-!Jj>EFls_4}Nk*5A~~yER!K<%i#99!>2q!v5Axi~e6A+n{-qiL|oxA_=W~ z14h#x`}un+%j=HeI!EYriSQGm(m!~vmPBt`U}Lx(`pMHtzn(Ha(s=T}e=EpyWTV`k z_s33hJ)7?~73Vqw*q`eM%H7!?coX%x9F^WK#q&q8k6<6l!`ZjS$9dhH?PUDO+q;E) ze(vKs)6D+%BkY>=Wa1h7-~GtPvCnxq%8S_tcMiEPj<~HlHh9Td}F9kS+!lg2YZ`-(iQIa zrg9T_{&QHRqLdd0G6hd_U5%ABdcGEF6dnQ>k{4Rb@r=HDykS8*qrbAJPw?tt%K6C$ zyo5`wZ1fEDoqf5qkJ23WVS7lqp0nBP-<#+x;R{ySS?a$No<+~q-`2rJ=*K8K%9R~% z%y;q@@cWIvj4>IgM?&yPFcag{ZlSEU#alSKxo$%?0lz)Zs&K$n*fSk~eQ`G;WliBCty4`u-UC&pT^+IiUj>y2hzz4K{ zCT8!Oz_G0N-o)`bfjfa{;*Q()8~!pJUrV(2lIN^Vlye&9K`)kb-dQV`ZxrQ)jH)%i z(AnDU24E~vO$nF;--Yqkc>0a(NPGGX<6pe3+V3X2;iZR<+3o%^#~-@W{F2LQcaC5A zyPWKkl%3;q*#B4i=4D39e}^@AkNO>sd)@3l`I&X>!(I{SV}vb$kMm0Mv`ZPbYo2W7wZiEeBqV4r1!IkXt z+7zB=H&V?je9f#!TgsDpOXnGkV)jq+IKqAcva=0+ea-yAZ>-bS{t-iY&-fwr+33#j zy#Xt_g?$UCXDauu>Hp)Mj4FW~&+zAfgxf{e@(X`h3W)UzR6&U<&7m(0w2 z_S#<|k@w^!|47y|YJS4&XTK1*l6e&A!Ebo8{BSbgYraW+o6`&A-`CL(6nC6=ZX16$ z5dAsCdDZDX$|o-3yAwsZPlnKf&n@FX zNPP#pZcJBr(f?H-f_6C)cobX)$Gg}4892V#KPhmY-=A=X`72V+;}rDgqx>E1tm`C% zSB1ZWC;jyTYOe~sxBCOnbCdmjvciq*!>qWZ5Z_&op?sD1d9+W&|9Ic>EzWO_HfSG` zO}@qc%bfR^{ov#W7qG9?@6>k~`~T;loXY*j=s{t(j4uOr;u*UcYknk`J;(K+2Rq46 zDGtfy`}e!5HGBh@`6bWCF1H`Une1v`fb+WsSCNs|{OTV8<+l=fYb-lF6LU8(3r>qU z7U&8G`IE>DGXD{L+sv1Yj>!>;X2dE4@bZZ%uZ`wb{hM4sNb*Q zy`!a2-~Y=6NAMovZ1|2pIp!?vuCIM^{x__5(0tu*yw92umZ0{vsqX>eCymn=;N4{B zM$jIL<4>|r%X7Gpd6akf{RHb{w>9-!&Ahwj>6^2ElkBY*?_k5A8|TXnGr3RAcRo&# z-BsRyQ)p25GgvrSDm0RM4GRnnKBQhX12uz(sP{kqzJVN+GcbRDo_;id?AI0aDwg>p z<;8l1&oGn1I3aW@q`Y`LR(Txf{saAwiNl$9;C;yu{Db$t)={s;yvM8kL<+G^>mVG= zI#AigMZ9lvg6F5MF_L3@Ujx6M|9A92@%K97+A;7K_9^MY@BU(cH_b~PKYr%0^p z#?IV4Kl|+{{@ucUc^hDAz89)EJb;PgKK#1w9KYT-XZG0m+Ow;{R%yQccOUBuQu?v z3uu09JhLNza*dY3SHS@K@L`}v@I#Kb#J&d9Ui2ni=W)y$V}FLT3VaN|KfpX~JlAvC z*FgUI0rSeksmBwZw*%$3nN?Q&I*p6TrzxF53=L`C8!RE{(>$w&Z&uHH218+^o;`n#b*NG(Xb6UN` zeQow5(fs?*Zf6s3RY_U5P=|d79`U=h#LMaU`-8yrU?0wpWS!Vh%739JUEwbJkJer2 zEzMCdAEhtglt9^_;+1)UTEQW3hJDc0zI!_&zp)aLXF>LTR(lM?8fw02UoaFZMSFA# z-ZAlMdRA@x!g1}ErS%mPVG805Nl0-pqj!y?S`?Se&_=jzGd z4~1%(`O89~`JwTYJ$zqQ@oLVSOMI2)l8bQBgyyOgT>kZd=1Yt)Z2|nhkSliX0SPk4s za2T`M)w%zLV1>{ac#$Y>DbF#>dzBRr)W_4sdzJgljPQFW!|D;)$T%?Gj3~qiRg5w7 z1@p-drs4jvp0B)>;VhnGDohs{w0?rUBS%;k*UJ&z)7JM}&XDg_{(nnU0b6nAeZB{` z6n@TkG>);I80&}keW%7;%qeqxL{1;JWZOJo#)K^v-_;F+%B5djv z>9xAR?NQsUX|R)XfgL}U*GM$$8tM^eokLEkycO*4`TLI%bxb?u^9=XCLwR)6HtQ&C z?oDmJV@B=G_X!-ni>7_^e~Er%*MW_rKeL~3-*0)29wZ0=+*Kf8}PzKHKC&xgktze`{Kv|M)P zVjWdXNUbN!$-ekuWHx#zs zbG5(IPPDolO!6i=3pxM1)yPdnxoqeovtHqFpnY%?`nZ(+MK^FfJ>Q2^e}7~(bBl2P z&rTs{TY{)oP_NE29d29V&Dz^eub~&WXmwk#XvH zVLtYe$qBFdR+#-5HZV$m&V74g&lOL`k*CmjZ6)#fEZC4JgFPa6-{Bv#k3)3ekAVDR zf#8DRYIxLFFJMux$*vPKmU1cICo!F1h~3(w;RN5@n7+_UUVJ-z&A3wem}2aY_Az|L z`_PNw3*@PIdN1F<)OWff-FJQaU@P|Vl)iWvC0yn2dYe+?m5cb55%9O*epV_lf6HiC z>p42I%YoK~bO#4HxyHD6pV*uAnVw|mgp6aunZV=4w zd&-xrS5 zK7_}?n#|ua-lsEf%6Xz%s6wXtaGiHN<5vFOCzOD1Xu~cpXopDcZ|694*ouf z{nJwZOEaF%k{6y2CsXm`(Rlf#>9_X3y8OYJhO6&^Zp!z~$+*oAzUQeq_j|{uPxH9~ zS?*<%_Rsjt39{YeItAy#JcIIEZe@MmFyc8fPF66BopnE-zry*yv$)Phm3t~aHx$2X zIdaRusYq41u9q`bt`=O6AX;ki`TW#>ujK!uW{r_e&X@VABk#%Yk5Z30hU?g@^3(WS zeyZhv@cTG?pI!rgKbU!DIM=V`x0}E<;YgX&^ZaSvA{B3+>h@%Yz>W!j$sFYV=a>(# z!R~wy>nGJtL!GBNCR^1UlezzMPG@|`eF{@wd7AqtB`z!d(=OC6%lWMo-_w(Y-|N(6 z$~xGad_Rf7{hso@Q8G_6B-9~PHiSJJDjiA-D}=Pr3lDoJ^vBx{Q-`j3!(gP)2Cpi7 z)}a_}PDb?~j5 z*BuP6x@q0oaJTzYWQI%J+af+3Sk`SNV!_;QWpU2N?sIdC zsW7E$h{iCMn^w~n`JNPW zoi%We=<5uF8?*@@UL6Ntp`(iU6tH3dQ;t1T$k~7xEEp7P@YgK^qwP>H1r6) zrVYLHHo(8$A+Ha-@6GT^z$0DDd}aQegPBA1f;Xp!3Sxb83h*zsUD zr1%DXwG$WY%dolFXYYlL#727!j1VjB1+czYYEM^OVo!n%#R_{eY$`UW-?tLG)&F%A zXY957zNfgW?lV|?wl8r#P9$(%!C68$F;%-tI|ke)+Bv1*F)>Ze6W7IlXAalT#Vh9& z{Kf3|3npYf%S`_?x1eYRb0M{*umYp`F>LNmQ}aPTcZ+C&oTj-~#5%a1_uwl$>85af z$n~L{!z~7XyS3alFooC0odPp4YInmtAwM%c{&?uScLGKUo%1Hchu#veK0M;}@@%-& ztDxrl;hyg8N53t+U+ySal6j;Cw7uo72IHXj58U^qTg}}M&$=OZJY46-bQ{14%m#9P z>g?_kF<^Cfs@O_&PcBJb=EXd{&DA&H*?> zRCGqbVIt^MgI&chTZhfXbz6?hT4I}h6_yh->`kzU7+_C@c|;q#56mX&*ezg2QNgYO zJyF~)16@(XE~2iB*ag+!OWK8CR#C|=4)cimc12i7w6*KO(qf?94p!wkgJDCl)t(32 zic9t`*oXJx4jje%7@79X5rrKauH${E4iAVqYM#0x&Z&9fIqTOuejmwACmi~n+|4PP zLC>u&mcwFhSMd_oN1Jkf?Cx$=^W{Y5gF{@ec7KSN$oH6=&h_8}w}4v>{&pL=ePJqZ zxVsDnnC~B=-x#4g-dgy?+vs(J$656Y!sT9VFAf~;g}uw@x49S1n+r>LH{9mX@YXQX zpf7Kb`ud};TjDzEl_Z_&(jqIjC-p3f7`QanCG!myjUVC>Ej2n8b#{En004qFxkT=Dv z1y`}^`{5`rkM|P&w(t^oo0Q%ksQKRTwz|c*j>dZ=*ZD_oU1i@LaKl(C_#JKxw4` zjDr#4gIx}m7JFW zoUt~-FU~XTA&ezr*ztK@a$(r=`MM}$mxI}PFT280Vu4ye>SD#p_qC&l>_nkI!vuu| za4vReN4Qn2aMrxvjpthM6!u|d_>6Jd4}SD6dF#;gMQ^Fs6>jjldwJnFuQVea`_N14okG8*y*IA3 z?@ea^S}?jd(G9?dSo^QI&ptOhBU`TPaah4w4|)Ge!|LcgCCugyXJ#XAhc(g;eiGS4 zVt7R)5Ibo9R&mK`1ZRjbP7>H#6n75O--g&>ePBs(%9e5oiwX8OR5SU8K zyA^e71I*@_)>@d)30qrXDJQpe1lDv)TX$e9r=Im24s^O&I`^C9Oth-OZ9IQ0yy9H4 z&cZLwclG|o6Mj1r?aRP=Bj=+mtZw6ADY3;q1RID~_D|S@)jb>ioyhDc?Z#DNA#a+r z8y>6m?}13l3Wa?xvWxLBE%w13m;>nx1cWT_#K^TC4do65gGh*DpE0t(I`PbK1%R2RQRAIUmHi2(-{}XJVC^4;2gOSzuX`dD77XjU$gli_G;U+@ zo9o>8jg^pdEymw6*pqo!&I2>tD6W7zUB|5n4|wyup6Gj?*Ul>ddwKcQxUcU0;~hu8 znZ3L282AtCd?onY?W64bLv9)OE}x(4rg0a;?(Rz=->1r0m06+3`u>;a#=?%D0w0Sk zXjZm6HWo9_6MLQZu&-$2B!%^aPx;6B#1*?W{mUT6*%@FoQC8V+mz)I34qw3du8dqd zqVLqOxYO1;jyy9s1+5nFmz~N=1n=0N%|qzn09Jkf{Wun!~xyR_h2n>AbL#(vKgG-!2W4iQ3A33}Hte zg5k>@=SIqJR=^L$2e)Ru9WM54Ey7Cv&aGV+-BoR5~A-@7=Qt-`R7(^J`LNwAitBfqD15-SY% z+fPh6f6ro7=m~q-GfWRgU=6%NKPBx5a}&&Fmof)J!_HyWf@y8r%ng&-ep7=<>~v;w znAA>hCW5K?eNw2givJ5U**VROuqfIp3v1gA%=WOe-CMmk6YQDhd9F9mj`%$PGV?_R z_`{BG&4mF*^9NYoX>C=Y-F=(|)>gRAxn(7$e-E4#c3ButRJX@KllMT{2Svp_TgE9G z2}8x128m88zOe{v>JPs^gtcEDc|H;$3h;v4hKLR4Y`D3&gM5!-x-(%d_p+!D zGr0@Zd>@zh?z+-@0p*wO;%)dtyQbikOo8o*t7U|x@$#fyXNdiFR~TKixBrF5oggDg z#;5OC17HPbCW&eM6{2&mk<(+_XLW*GnZKjJ5%x|~&btj+MGL}wb~E!e@=tFUHW$OF zSmll2D^_0@-n3pCe}mXT)(PVV+;6QncEg?4d}BG>Va+gR!`;?wV>&!&Eiq=nGuBS^ z_uJN0V;9$NtRKcT7{g9#{(>3okZE%NyjXd4U_HBoIRg%~r+D=_Fc9=n1f&x zN3$NljP$Dn{b+(+xdYB(eoIMzFFVQYnlJ`Y!P!t_U3d(OU>}5$Q)7`+tp`JhKVIN^ zDN@&v>k0e>IS;(T>b?dO5HHP)J~A;bC%~%A1MguE;%?F&?8&$fq5sOnbKap};k|M< zz-Zn!wcg)$2VyZY&$;E?PyGKVH#MH7oKGGL8CT5VZV-840=&v7@Tn*xCUXD1%rY{5 zGeulb(ZA8H4R$`+lY-B|GAx`cp)8OU7`&K;c%i%scH9i=7k>cIqQ{t57HC8s6zj$ z5*<7PClJLn>Hldbo!uJ75Y6pvP#2r+sK~2?h^pdSEkzY)8P}u5ax5YlPx$4?_}FD( z3n}++qMAsA9@4pkL`PWAT`w-frr76c&{sn*x0f9K=VshrL(fTw>Q05v-C1r`xZiEc zN+ILUA@?f(--futG+4+zETsLAk~nQz_*&E!2e|JcVTjUj27a83+qD*6FRr`yD%rbqhJnx8IrNU^9E8c@{ZkW}U7M zquNE)x_gb)b2M^YZ(TOB!O?hgFOYv5tEjOIR$V=9`!weMHtcT|HmbvU z)*xdvJZPOZPQqu_KW0MOmBh|tM!@`Na~o`r_m`4>EVOT!1K>?Nh4mRGCK}X^{#GDM zA>$C^7%ejXblwTuqhM^&k54d8#d%xCugen+mhsL`qPue)PA6-U1v&4=+Mfs?h(h8c zjODiDO_A&KT(JXIanIm+Nxv@W{YAe4{JTByySq*K_vhUH%=9uJQ_}s;|Mhee6LFUN z9B-*{AHeF%$@MqUR($7vr&#BuoiSfTQ~8;$Vu70PON%^?&hvdlad*`(NgI#JIVFrm}KlJT{Zwoq}F5m@`>>3?Z^zIhb6B(WQs#o=AcGOr-Nwbm=64IGG< zCFNVk%46(B-Z`!JdS{ph?=35gZ1vQCqpw$3W%J-ItoX|CtQl8N1&^9vwO4-hg_Uq# z@ws*o9yQ-8o-==|-`_Tq=x_M_D>I{>lFvo9YU-6>Dr>kt3udzp>R(|s=8Z7V?P--Y z+QRwP9AgtaZGAVQ($4ReXV!+oZfx#_5%yf=SIi_jIEVgSVHHeCzY{x6thum~v(`$E zT&CgmHG(&pMK{1iVjeT1j5B?-Ys1>2EEXkx5OEXfKQAMGDDxv{iL%Re;0voXdt&hu z$D$e55%Nef?w-wyuk5{e-c@%A`o8bZbsNGhZWA{H9O=5s&aX#Yc{cx_k-VJD*F__n zAm@+kqO6MJtt5VvkNfr`zaitcl|?P55;SO^%y<28CfMEJGFJaYuo~;!dioK|>HGhF zyX{(k>2FW_o>?E}B+4%RsGn9)jOX);{ zb$R|!o);F$oJ26XSZB-p=O(9=E#n#WoadIbXX6l0lk3`EJ1Z-;w4WcEedwplx_*!T zzp~1i<>6W@p3-|4?6WG!tB{q+c#2$;Sm*WO@EKlwCV0@a^mE945ni3t!w_?&b{D<0 zF}rL1U@fzPmJyaV!`cTQe!7`b+YfV^v9vi5TSFTTvzvc|{a{{xKLi%V8<+wsV?Az$ zjmoiCxy32|d<>G{~uo^G?a_pi^AMi(+9H zrbn(Jto>fFx~SvahW*7ZCqMFEA^s6d;3e!q86W&5I~7)*p-&iAEMo?#aDeIf4CTC8_u95SCMh^Cp( z@#C-1j$^F;jbU3ShW(ZHr*IZquO)}|%?{c;^iagispWvejIG^6U#ZQ< z!5J`~c`R5TMlm-Av%>Gj;$U+4*_a!Q4!;<4g1<8`zne>g(YTIdZV4uXDaKf1zhM2&C4 zbyj4vDE)kece@)p_6RdK{clS=O0IjGSPx{p`H$Vn`UXon$F1_nZ7SaLQux&AW6QX4 zT5-#62#b*Sl>T%(^4~Ukn87+A?SMnX-G0G0Xt6o^N{#n+4Ssjep?Mh>o}}jeImCt2 za^04n(%#EYzHS0cz-V-g9|G18EFXxedWS!%{^4RyIxqk)`O^y2p&QyB_?HEdQ zLdNf0qE@?U?=`!LRUHnrW3qxvdv2YX6F#wOo8#&4d@G^(13A>QCL3*`pXl8Oz;ow*}432=4jk3XsaG6mzxC904HOy;f&f6MO7F@oV0K9{AIMO5iCX4;sfn_ zXOC2IoN2aU$+%}B`-It-{(P`Hs&#&um4O*t`d_Pz$;cst9aA0O5axg0_W+V!hfDH{R*c=WriUr5Rbw-=uad?mDKwO>^ z-@K^i1&^rFL9Q!f<;nS{x4A~!16N^h)}q~a%no`~`jG^$uL&$`)io}{(PWKE(%&;y z4)X*|N))gL@~Def{1&dTEo(gT`fd-j(j&i8&RwfJoI_Up3jE~Ew{s$Ijqx`RR-}p| z7W(Kz^uH5aCH__Mw`-y@8FSWUsxc13t3>$*q4#A(`SQT7)M-dRzbN^F)i8;>Su}z7 zMOQ2d)?@5^8Q1GAzBm>vh1D7Bf%5Md$BPjSPix{$_KxqmwbjVxD=)|egvAq@B02g7WhD)9Eb-m>0JX4{>9(W zn*{d46M95oEj+6?3#^B?_1=MF@U1>O@D|23P6bl%Il+6AAJ)L@>jsA#)q>mMA!Ces z52Bc-f~{zWVJ1;_LPeqxjc8{-^N{u%Zs09nK|h|Gv-E8AD`=%K7Q#mO390G#60*@U z{`?wi-$pLk?ak%^IMj}-;>K5*KVu_D+c{`8f&G#55qRAh&Kn~2@W!41i!nN7okS1M)cqq_(I0kUVoT$eSl!Qxk5oiw&=yd`c;6r_CAQJbDZ`=>a`5~W?F4z@zGb#m- z!tKVmV377iHm?Px-DsPJ@+WHGM@WBRl=)n%Nk0ymb@c@F?~i$1?*;Q&5ynS2(0XTd zMh+*fVrDetk{my19&AD!qzH1`W|y+w!}!iBs~Ylb;{2oHLVFqIGHxCZJ3z+Oa*1Lp zU)+Mx+5r7b$4Ymtb1;GweDAS6RNr}pL)=Ax5}<&HH2mD*XB#w z{n;922H<@B;O6wJg0;bresB!paDI5e?5|Hn4*jtLQo!QKt)kL<8f`4{J7eq*K1Z&- zjP}9WFuUO?y?-Z~(;xXC*GC32!8v-)z#a6}OaJZf2_y6~egVtqEBznRWB==u{HI|~ zeYk%s%mp{7-%s@KhUNLc8?cdn(jS%2_0xa&3&RC^rocpaO79c+1%K)n19^B}79)Ld z6zpu&QtjDiEC^PmeX-2>x|cz7v{t3+ra%|i@&z4&spgVvKRBbB2Ii&fAya|(^^Bj`s3HoG4%ZY z7BI4&&0h;f)pPpmz}R|We>0d$uj3yMUA>QgBP^w__J4$}^hf>z+;=kb!curd9~el) zbARd20(D^?Bc#@Yq0CDf?Yw3j4laVJu@7_7{xaqe6^9sXep7zS0ixLX=x!krTMz2j{LG6AojR8N~B4@YHBB zz3(4*T6^J(2G445e6itG?Uye#e5xh)=Yzkr?EaQ8rQX!P0_N7|`M<%&`V)VBo->Jg z<{CVsFHm-5TqBOM533p#lpnbizp^Lojcoo1CZHc#%=+4P*xJ0L^`?I-@MC5C_$8xa zk?c2BMFw)|%epB2!85FrwUC#O{B?BX*Ue5zCQAAPy;VHObsky^k?$C%JQ+sp24}a@ zzd;qqE3Rwe2i8YFqgcIV9B?=KuYmsEh`!4HpN8F66umbh&i4&HhsfhgyYB~He*`>? zznBb;5kWDP&sE22j1Dv4^>^idSDb^koM&1%MeU|A67?9ePI{(Y-D(SS5YPHfdv93% zOh4>rr8Vo&AKU70ETMn5OsX>A1T&Z3g8o;)k3WN4l9-vbN62ZHaWt47)-oCg+aSkS zM$+Ja=zFg|Gtd+c(9J+JSXw{gZ;l>(dUyY8^z#F6T#oa*T1u2X9a!dS@Y_6JXK5RJx8Nr2iZ4F*xv0fZ^T%f`zkeau8T4WP zSUj)1e%;?64%71n;?kZY`uad4m;ig=Jd7awREBo%F^&cA!$iapN7Ap-=0X*x9AWzO zoZd)v4xtg`R!xJuw%) z5VMrszlpa%<_UV??|0(=3-dn7_b4v=A7s73a%YBpi09;{8b1%bV9!_nUJJ6iGM^Kj z{QP{{yM(Bftb-|q^&;)s&qOuK(Z6M8cYO{0uSb?##>>;2HMHF5|Cn(%SPMBdAX+vT zxkWQl1-~QDZA4Y&`07A(Ee6b?uTtxL4A%8C=;fXk-`@!C)-L*D!3F63EP5QK4f4%| zU9{G|zOb2A*Vh&{&}#bH!Nyuc_4~G3C*O3g2Wk`5`!ZA8=KI3+F72gH&Lj7E>`-FM;=T1fpx6M#%8$ADy`xGG0=Y;DtX|LQ*CVPovcf5>ZZf`8&OD$+f&WmA6C1fK!OoX?mx9>SosioT zJyP&8@|>YJ4^)8F^%s6==Vj0b`E~e~EX{QEaZ-Ec%L11(e*Z&nW3^#wym!$W`?_%* zp_TE~g%z~izH+dHmfcq#meLCN>cgs974;sp)H?gta6MR?<$DO1X%~DU?t5B`>mLBW zYt{X4p^cx=g6B8J{*dd?LVbwR|7$&V@HE%?$O@OH{d0{i!ACHPnNFKPzw(-swYv1P zx0zH=N52o6OLSRx64xrI*8kensmOYPb&MNn|HZP`o9U3FwDNDm!**X)2WPO#??uj| zvGU|Tmk-VbdjWK*x=Mw98sh&?g42lJ$U1;iRA-KZk*N!lbwDG?^GW?z{-6HSvj0xj z^*kcWFY9+#i%Q}*|KE{Spb^YTb%)${7fHl%^1unsFk8kO1H|`boOdg6J{gxTOLevb zpIHmcju&9>P7Xi!gcR4>qFi&iNy_g4{!TH*0UoP%@6njG2 zlb^L}{wO?G)0g{YJRw3)5=cn9=IX-&t>8;NUhpo=Yt&Y8!8ufi{G=aIiC3i^IIV|oHu~$Y z)$?_SJ+*4Sjy)R|`m;P%kss}H^B2=5o zywwou35wDGGv;yq6iiJOYaQg$ntC;v2RUdpXJtSR)IHThj=k;7mfUahAM0#SScEEI zX>YG~2HUlee;o1CJ`W3sE~?(DE7e{yAHSMTXxc`xPo zFTwb?;X`Y_DfdYXU^SSc^gqv#^^xbzN4i|+2AcU){3|E+kktPt^e^+a{m_3@m=^uZ z{LLZszX`ea(sL_6D>wRI^gsQ}ad=mYOn2~z1amaB3@jofo&-Qjp?kB2EmM<#u zKkUp?^%W^Z3U)Hd`uWL@+&4Iwy3prvmng3E_dyI*aXgcHU0J^~m8`Gy|LPI<|ID?H z6}S|>7E7oc!~Vqnm+M3ic5!q?{{^Tfm-b(Dkyhn-XE@XB-8|2v>Le4~VNbEv(XR4D zBjrAaXV!9+*B?rpe-Zs~tTl$LhrDdQ*L675ETIpj-+9TCJVzcs4O9DwoQ4`}gUO+v z{G9ZkPUyD+hmmW4y@ZPE7DVm`kb6SCh2IaKGXKv(Kc}@jz9Mj^w%+#>{cYzxkaqk& zZHDg*jH%!7eT1Ef_eA3V{?)Jfo^rha`~NhQeu1|^}3aWLhtuZb5jP_qO{sbq>{+Ml4JhLIy zYckHUglc7J|GXm(k`8&~xArKzZwgg#((iw5O;>hb8TKulME|Sp=2l7MnwV;@EwCq} zT+X|Xi2KO8I+J>h-v24Qu7{6Hx2}I zBd^TZe}j?V4gF8xF>)QJw@~?<3i@-ujK8MW2m5Qn&sx}j5&hiJzWTbsGpyIH;tpRN zcum{t`;A`7srWNEIIL0Ulh5z1IqECr-2+Ue`Q-e4g`z zD6Y&0IQmilA6OT=Uyl2^WcgRYhuHnHo*+Bb9<$*@V^1&>{rHVl_ZViUDtI~l>(07g zoc`{?Dn1J1SY=dwOD(GYUL%(ctozfDS3KfArIBAN*8P~s^Nc;(Y6G*9|CRgR=1>PD z^S;r#T<16lX8g1B8C^mbo#Q2XvuQuib4H!9%m%X*HL?szKt`G2Z@ z;=){RG*#ChnK~~S|2z7>yx(Y|!1K9JCGv@}Ux$e=USZnMr!!Z3>yvT=K^zxzK8x-Bie1jMc?ROgC61%uMNVFn%{p6eLd7Z`+C7g%-c2K zEA6(gFifY%^0$U{iT{p=xpl`s1HPbYU*N|{s6tTia#ILUj;sL9pA_kY(_g98xw*b;UVKqa6J7;NmY0$`c=uipvn3) z>GuqPx3Pm|U7$^NcM9xHb~h99xoq_|@4}2!$4-;u$1Z7wkmnbyyJ@f<^L`BEeVlo} z2TUzeseDgG=6zXjJDhl*^!E?2AEYh%`X)w-k1*_>5P8sRbF|$b?x4QE6?*T_uD;Z; zB><@t@BT2!dWb?K({miCRX z>s#%ikNDpw+P~ZCVak12_1Wbh>)c{ljg9g2ce}Ywe~BF0;0ITMHq}r|kkf4=j7falf=o{y$tl;BzvL^js_MF9m;U?fes9I_$i^urPU` z+&r%v`M{BIy?!zv<9uIqL**e08y$nEXy+WNf9uiizlPAF(w`jW9PJ3~Y^Km<{rGlP zLpkmvTRDv~$e|)teh=Xi=E=dx=MU>|yQw!d}y<}DEAkQHClaInN%)Z%?_c!OF zy$WWg{!`Zfx5T2B-DG!IBse7gVun9TvMF~a?;(*jxOFW>b?Z5 zjU6cWb!Bkx6Csds0I7LdKTw$&MSj0hJhh)En;5I=`o9wm_Vc`w6h@Xm;1EtShG#JueKk%^+wP?oqZLup7Vo+|^(19EE4S|iwy^mfjP#eniAOXyXKeiJ+rO`Y28^h#!U4MR< zLa(Ua3r&yk=jJ*@KByWr^sfFkFs0tpKMKZ%3t=+i{4b!5pP5eGKe>8NcfE07CfDn! zHhd3X>prFT>_+q8G1@iE*cy~|qEC#ZYQERZ9@+%@5y5&d{k*wm8+{ghWd2nCkH`Lj zh4jB4^)Gpl%N47a+TW0oeTh?%*I4FJxljEAUe$l)O;{0{d*H`lVQg0#Z_2v0G&8h3@2IsSTdl$Upo^U6i_oeO-w-9XW=2z!8 zWMN;|BL4nEY!LDsnSIoK#ehRtJ!BlP6!nF7cuqo*$teTZ;$`lm9r+wb)uCLVy*p@c zbKX)J2aIMPRr$XqR$cQF{VZ*LHj=^bWE3AA&WejtlyP#yns9h zVGm0GDI@m4c;x(obyn8pZQwnS^%n#5@_`mGLXV~Lzs2>7{+L|n*0=cYqsQ#}68{O9 zOJC+c1M{(NJb`)i-Tuh@UrzGFvc4mye$Vg0(t5l=4cJ6492f>i>*E8m-e(tizC=9t z3toFWn2lW^GCn=j*cPlp`)*L(dk3bcx_2<`uWVk{($cSSW?6j*Ja1mmzrhsDe?94U zBP)^_137G=Do)zR@z_sT2EDgnKR^`Zc7iyMtowGIm)1!*nYt=D?*BTM?3FMZ)f_(L z-$opF=D;QBCk^_!D;kmc;r*v>Pug$g8TV3;!-?}xm-^)NhCA@1`_Ns1-gi^?T@w!G zyp}ky6#IF1^7lm4e@Q#wD({i3|C!BhpGDlap?K@a^BN3x@%QGrcUTAB(w;WFh4Ng6 zNX~!OGuk_iE4dD2qWbeU{kllintS^Hw?7_*%ry_M9(mqaY zHr67L<9Xv(a3yl>MLl0q7&dAKCnNXIM9(t9L;97#J@hkQAEWYugQ?E%&UIHkYoH-) zqh|pWhaC;r)?yBfW_)E`yV?=WfCcWa;B`|GRq1V0D-fe`G1F zK)q2s+A-BQ9_$UD8Y#5Mv@?U*PNPCZ>D@>BN126H-Qo#zzy6x*xaax!>$M!-(7__FZX@KrOrpjQ#w#L9}l@+cNVJro{#lj`gt|5>Scas zJYJgIUwIrqPo57IiT(DEU`}>tXF+cr(Q0?NlJg(rxi1gg(Q5y8T=sV#MBkU)9d0K$ zn_XW)*of8OGXH1u-VBBBhzdx5aVxuiZgSt=a{oCjgjKkS=f>t-6S>c0ku%+v^=Dbh z2gthQ)Ak~jpKeAyyYvTRQU@@R{;js^tGd4$?AlI8|6@}J&>MLiG!N@yYFjxYi7#|^N6(LETM=XEny2W!He z#_QlQ7{$z@w4l^MT{o&ue^26_z%ut9c)Rz zpIgIJUMHV@-&}-Trr8D5eE$hQiodWQ>>qX%OFO%d+BcJ!b3@Qr(wN+9wp ztOf;PKi(60j!!YpZ;|=H`0N*v`M^t5gG&E#25;2>o)f|I-}8Kvc%wXj?LX(HE%zmN zVxFo4`<7%)o>_NRvT3FHO5xj%GGBQ7`foWyErqW}s z-~brM$gUXQ$g6&zjPbmj-y24q;5nEJ`|TU7YfK5s`pv=QZF<6;#@pa!_!&Pg3(rrF zA1~|pin8l4DedcMCRFumi_G@=My_vSy(gw0$;s#TfYpiGzlC$C-fgS&J{Svt@o8T- zCnJY(#P!lix!9AeuCN5zyQ^>o^>n$AV@#?ymcZQ9btOa29oR=b5-w-=T~ze&A6l0B zNFh(%K|kg3?+e1=SoQLpy?uCj$KY4?^+`X^^KL7@zYzQXesdjc` zUpuXh^k+Dyw-kqh{o04=_f_8Vf8bDd12jV(d8u-~gq(hunN)sopSfATjXXz~Mf7e^ zjxSmFpT(S@ZAJb`%<@_Z_{K=4Jwrc77?;c8V&inM3mk(zRuv9l+?IsBjTOPt>Uw>! zE*#CSu^w=NaXGjI?lRs5ufh99axD$_jY(a3a~Q;qI}Qt*ThzMLg54T5XvajeoU-Q* znyZu_^Vv*j6r%l}HPBcJTUx&jS>L#Z`u>sdGwYx1Zz1-3$^BiE{-^gB_Bbk`xxe$) zIt3R}&m)jq6!yu=dd{rmbLBqo7OcMV{GWN86ZQ~ZA)i|Z`N!j&4Y|L+2=l!_Pra$) zZVNZLCD`%FeC7_PqL=s+r#i@dPfahD*Aq7M>Urte|LHOh$n*TZy4O@a@P76K$p0Ho zRk+LxRB&S}e<3AyWF@ZeQ5PoTg3GW6l7uLq~OxG+dvo2(1FM19CNjoh~})2yfRG*aL1xqeMmMo!w7p8CzP zuoCgDr*I7M+j8{d6mbt3_ex+dHgnO>>eN5)hfA>QWgPb_b$mTwIp>pg7OtR*Ue@tO z<9wshFbn(r-@|6)U1c5DEVA+P{EYML=P8WbW4L|9ZkQKqUhc!~%>LXua5Y&SdEVm# z>bvg2RNi(neCW~pM#hiz)64EHgM+=noaD$j<+QKQT&MQ_D0}dcyVI@1^%}P;6``^& zJQJEn&g>hP`vGEdieN@~4!=O|C!S6=LFN}4h_h4#AxEmr3&MBo0zOLnM`5K@gbwH6 z$bIZ*$Wr%(-LVUN(6FzmIL94!3H(7`GpKIq1nXFz44DVftbQt9@YPIfWas)UyJMt1 zwVLWkStmZ;ET-(Np6src??nsh>k7hp%omwqP3%eOf7O5)VO{f~mKQcPzi1U;XZG>Q zeZoV`th(I4JI8FSZ-v{<>G~shgE}Q?pZ?Razpa3|-A&5A??60H#&ef(?wa)5@8Zv&gUP(rSn{l& zoZ?j(_UAOeDR8UT!n+Qad-9|&`p>zZX<-4+RP#Vw?=c>sTn`qieZceF`euMyY<1)$6Oev|%R zwsdLoi?uKT_@inId{6Nn8h>OedHHGQ|xj(cMQSpSZI{QcN zqMt(47wmwU*l#QKW?3DLNl-_RGTvxXUpW*NRfJP&0t22lFM2ZjUuHaQ`6ZbyS0; z>m2(Vq@Nzm8Li?RdD-W$l-GCqA-H^54h!oXt7E{oz-4tGfRo^2XAh9M6@^7uLn@Xbmm$ zMh^TY2C6v0aqUr<$AG2W+Rv)GUO8D4T~sye7xoZHlZ{+Qyniiecq{FD1!x8?kBgMLq;j=Brn!#sHu zJ`uUdsACtnE!F<){8(=?&eFy`&(1v=mx-><^FG6<9>w(^c5O*}EX=uVe_%uJsamHe zGtYNLPe;8v-e&mCo92Cx`U_p;1Xt|kP`prkI6723B+q>;A8HUv$@$M2IQRVm*YCY& zoCL`D^;R+ipkJ?zS`X@Zo_dd5P6_J3{eIvl%6!3b+VPC%PvulVd7f+&_ZJmLDNke$YZmaU*C+(V6cCPo46_xMF4!ekDC>B=SZAu5;n{Y=bpK4po2MUG%~Omie=T>b$!>)MISp`XPDQXviTpr=VAcnTgk}g7w^O zSbB1tKU4Agt@!Vaxqghdj%S}IsW(K~bw#}0oWLdRwvU{^NV_<%u@}6`x%}H;%+Ngk zLfo74`{nsg%|eMnZQ-;~sn9BTG&Csm9QFxK4wXRv6+$&bQK3JSKD3wLfAk)35-4^Z z=RjwMld%%taKA>L!-@X1*L$n%f+)n1WW4Yq^T9*fw~%xFm%vWEugzgm@`xTx!TGc= z>EA2SSPX)4KYDs7{h0&EqbsLC%e-Y3@`~wU7Ocpt$T20STFQOoznw*DJYArgS=O1X zV!uHgIEG!PGCn5PS2*6D5+f{8h=wK+66hja|gN1c__b9JI_k6}lu<5JM>u|(bF zIajOMCo>eDV&B~%_?mcG4EmdpQy1m_%Pg$g(_wA=D7jt^a<8j#z6!aOMqbzOzGeP3 zn%A6@+vGT(rOwf>>zyM*%lP%8dvf2-F3#tbcKS=NleZV9M!Vl(Nltang5J7^(x~yi zEL1tPn(Hf}kxK88!v`4g*r%Zrq26#nXj~`GKjgk5u$tilNk;6Ldr$X>5yKm+C`G+iw9OowIDj$cH@Y}z^KHdu~ zJ>GkwHTB^&uaffPqJ@U4^ZGJ{_Na3^>xVw5^LxjJtdJbPJ45wD8{yN?6i#}^e+ZxE zFUP%o)Hx&xup%cQ zm$$qRMd1Y*U4YxL8)Q6T9_PQ0h9j|tWE`Xib*R~4Yt~bF&OrlF9g9KwokfYDNxkJ% zYPp8ZKBRuEJQEI(C+%|n?45nunx-l$vMsiLRwCBFD97dE7Bz;iuoE@7-|MH&kD9`_M69A+Exjb1 zEH2{+_tZJTDTqJFbAsQxz0|qzC-5R>(Z5CPGnf4zK-FOZ7{T{{q=1Fo6)JC~u^!5L zqj+u$Rd@WEx5nf80p}e@h8K~h+|Palt60`K?Pgt-=MZe6T6r?uC_XR)NWNibyv&ch zSJ%7w9v1ocBb-yV5T0jWgB-Vasgsj>ea*Rf&)^?stLQu@5#PgMLY?!<%fUQk(PSND zWzM}@09(`E^Kb~(nDl?=GtZ@gd#I+%0dLYznK$`PR;3$E?KM&7X6ErmDu1oMw~><+ zWgPC7I!Apu^SZR(&v}{Dc>2oetTJBnZ)lu%1eOTxBT~=$8hX!)k6p<3H$=drp{k*& z@O@}_=roKU-u3_MdH78zH+sw-P8jY4%Y?1)Di{$i6n+Q;;T++A!mLZ-bm4nke-A|s z&xaR67qJZG`y`*hyccS!-h*nPjG?96-wpjDfd&IGdB=l*g^Y7@Y?~f zA=aZ@r*bn(rGhEEdFuWCgx$D{eqSWdG#*MTLfQ*cIj_D5>_z>FA2vp=(P25{d{xPR zl2{2{s+R^sALorWg{c^SB8Hcv*6;v%|Fi`@0;k^8Yis?bP=V ze3J2ny`B_#?Btx~-0(JjRznymRNo^r%lB`MQgSRE z+N##uj!0jg(>ODfBqZZB2SbI_{Qe@;QLXE-8O{Ik`*h*Up=9VQV>n8_8FD6OIQ{h5g~%{5?iEc6c6q9J(872=|6oDtlpC zsGC|B+Jy>-vGk-|u3a zDjy#jtR9b$M{K?~MCPU6uwKlBSEx#tafQ9EUwvQ9D&$<4>zSNRBJ0sc^M1&2Ho(24 z;vqd*E#>&@LLB0w(%UXhzLD2E)%W7`#4mltb$`D7=rbHi9i06CsYJ8l!o}QA&OcJG z8a%>#DD&pmIrX+Ed_}fY>Nkp)SFO`2y{c+G3wv$UdR>zBdLw^tM1Rh}zTN?qH<{`E zr|k4?USv<^Td(k~3MJrYPTg${lZRUI%}mlxpU6rt{j*)1$R+LaM_xSSxiFL;U4=NE5Rq^Gi6=-JJw$rzy5{SEI%K|EADoJsl93{p5}PX z)V!3}>%mGc?XWTIh{un@>is{a&N{w|(Q1&GUn)d`)f{QbCv-!Jc87R-EDsp@ytif#C3LE+65fNBlu%}$# z(-&j>Z8&=8*D23npC$S03R?Ra?%?TJCfakHr{*@iO+1sh{f>6mg&Cc?KKXyN5l&aW zbSLxRXY*aO7G%%z+_j(cCmzmoALp)lp0bhe?#SO=PdO2e{Qd2jQ`5}vl&sQ|DQ9=* zJM#U#F!pITVNv(76UaDMAubn%&D?yh%*QUw;yG{#_BsfsxUJm;xWw)2X2E{3?gTdq z?sJ#872!E|o7)oJb&t6}!RhV>cLW^a&UHJ&o|LM=Htr9u1MA==Qcr2OBoT(^w{9qz z1^EbZVGIm(|8eTTkL)A!!gyzq^Mv;9bb6b(u#oQxivJEJn-qU;>-=k;KUQ)sv+_wE zvCa5@7H5vhZ$9xgf)$L@Bl3uG@G^1oM|gyMs1e+WPPNRdSZ0fczp~nhJy!ZY@FfD` zICheCbp_do{M~YOBG+?V{tmXq_ul9k@8-F79?HkiKlQ>Ze7{h^hwO4o!T0QIYQnTm zRbNY(&uL-u+5%2bW8ccoI6R2`1bKK2?Bnb(e^;5rb2f?JE1kd1|Et*Tq;bBXpI6v* z6@jmL?$!vV!g{hl%jW*<$anT^cdZi#3%IA9d$7Fw#@M?a*;!%6^*iRb2( z%B|w=fHSeC0>bW}~u6K{S z(QvW5-5mp`y34S<pb zV_)MQGVTA{Sz`S63{M%h(y#42XA=Kj

r`!ZE}?Rq<#i3t3C(m81UE;`@2N<<>B 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 kPPuwchf6l3IH=!LDcz1R?eyeKFw^C8g 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 Vh<+YO_y19LM7{A>Iq$Wn@n5MqcFO<& diff --git a/Templates/BaseGame/game/data/pbr/levels/PbrMatTest/probes/127720592_Prefilter.dds b/Templates/BaseGame/game/data/pbr/levels/PbrMatTest/probes/127720592_Prefilter.dds index 899713cd91a033958b213cf68b1f8a41f76c028d..8ca302b9a6c8c1f11cc95296831d8e29a573c4c2 100644 GIT binary patch delta 121967 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 delta 121629 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 CeIsuG diff --git a/Templates/BaseGame/game/data/pbr/levels/PbrMatTest/probes/1703285932_Irradiance.dds b/Templates/BaseGame/game/data/pbr/levels/PbrMatTest/probes/1703285932_Irradiance.dds index e139ee9c302465790da72073d4b5fe00bbac98b2..33529d1b9794b59ff22f33ea45b58ba878077a8b 100644 GIT binary patch delta 66106 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%0Ap1S*|77UvcFc&6x-Z6w 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 qgxsP*vVa@H|?6vfxUryqW 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%0DBF5AOelZzoD?c%e?rYVg*vFP$T`H^KIQocYq?~r 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

Gg@PfN8t^;AM} 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%0DeJ6N!`2%@uwWJ_Au9DFv(Rqqzk9M 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

bCbE4mlYksk|>? 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 diff --git a/Templates/BaseGame/game/data/pbr/levels/PbrMatTest/probes/1703285932_Prefilter.dds b/Templates/BaseGame/game/data/pbr/levels/PbrMatTest/probes/1703285932_Prefilter.dds index 701ab1ec46da053bc9863578f7e54c366af05ccf..780a310aa1097fe4d091f4f9af9dd6100f672ede 100644 GIT binary patch delta 51840 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 N^7ad|Gdtw6|3B->El&Ud delta 51879 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 UV*_Kn9erPXy+UY4t4xmn2NFjz`v3p{ diff --git a/Templates/BaseGame/game/tools/assetBrowser/scripts/assetBrowser.cs b/Templates/BaseGame/game/tools/assetBrowser/scripts/assetBrowser.cs index fd6f85278..49c1941c3 100644 --- a/Templates/BaseGame/game/tools/assetBrowser/scripts/assetBrowser.cs +++ b/Templates/BaseGame/game/tools/assetBrowser/scripts/assetBrowser.cs @@ -150,7 +150,7 @@ function AssetBrowser::showDialog( %this, %AssetTypeFilter, %selectCallback, %ta AssetBrowser.fieldTargetObject = %targetObj; AssetBrowser.fieldTargetName = %fieldName; - Canvas.add(AssetBrowser); + Canvas.pushDialog(AssetBrowser); AssetBrowser.setVisible(1); AssetBrowserWindow.setVisible(1); AssetBrowserWindow.selectWindow(); diff --git a/Templates/BaseGame/game/tools/assetBrowser/scripts/assetImport.cs b/Templates/BaseGame/game/tools/assetBrowser/scripts/assetImport.cs index b63f5dd22..299ecd030 100644 --- a/Templates/BaseGame/game/tools/assetBrowser/scripts/assetImport.cs +++ b/Templates/BaseGame/game/tools/assetBrowser/scripts/assetImport.cs @@ -497,6 +497,9 @@ function ImportAssetWindow::onWake(%this) return; $AssetBrowser::importConfigsFile = "tools/assetBrowser/assetImportConfigs.xml"; + $AssetBrowser::currentImportConfig = ""; + new Settings(AssetImportSettings) { file = $AssetBrowser::importConfigsFile; }; + AssetImportSettings.read(); %this.reloadImportOptionConfigs(); } @@ -510,17 +513,15 @@ function ImportAssetWindow::reloadImportOptionConfigs(%this) if(%xmlDoc.loadFile($AssetBrowser::importConfigsFile)) { //StateMachine element - %xmlDoc.pushFirstChildElement("AssetImportConfigs"); + %xmlDoc.pushFirstChildElement("AssetImportSettings"); - //Configs + //Config Groups %configCount = 0; while(%xmlDoc.pushChildElement(%configCount)) { - %configObj = new ScriptObject(){}; - - %configObj.Name = %xmlDoc.attribute("Name"); + %configName = %xmlDoc.attribute("name"); - %xmlDoc.pushFirstChildElement("Mesh"); + /*%xmlDoc.pushFirstChildElement("Mesh"); %configObj.ImportMesh = %xmlDoc.attribute("ImportMesh"); %configObj.DoUpAxisOverride = %xmlDoc.attribute("DoUpAxisOverride"); %configObj.UpAxisOverride = %xmlDoc.attribute("UpAxisOverride"); @@ -583,12 +584,12 @@ function ImportAssetWindow::reloadImportOptionConfigs(%this) %configObj.VolumeAdjust = %xmlDoc.attribute("VolumeAdjust"); %configObj.PitchAdjust = %xmlDoc.attribute("PitchAdjust"); %configObj.Compressed = %xmlDoc.attribute("Compressed"); - %xmlDoc.popElement(); + %xmlDoc.popElement();*/ %xmlDoc.popElement(); %configCount++; - ImportAssetWindow.importConfigsList.add(%configObj); + ImportAssetWindow.importConfigsList.add(%configName); } %xmlDoc.popElement(); @@ -596,8 +597,8 @@ function ImportAssetWindow::reloadImportOptionConfigs(%this) for(%i = 0; %i < ImportAssetWindow.importConfigsList.count(); %i++) { - %configObj = ImportAssetWindow.importConfigsList.getKey(%i); - ImportAssetConfigList.add(%configObj.Name); + %configName = ImportAssetWindow.importConfigsList.getKey(%i); + ImportAssetConfigList.add(%configName); } %importConfigIdx = ImportAssetWindow.activeImportConfigIndex; @@ -607,7 +608,7 @@ function ImportAssetWindow::reloadImportOptionConfigs(%this) ImportAssetConfigList.setSelected(%importConfigIdx); } -function ImportAssetWindow::setImportOptions(%this, %optionsObj) +function ImportAssetWindow::setImportOptions(%this, %configName) { //Todo, editor + load from files for preconfigs diff --git a/Templates/BaseGame/game/tools/gui/profiles.ed.cs b/Templates/BaseGame/game/tools/gui/profiles.ed.cs index bb750611c..16e5f4194 100644 --- a/Templates/BaseGame/game/tools/gui/profiles.ed.cs +++ b/Templates/BaseGame/game/tools/gui/profiles.ed.cs @@ -37,7 +37,7 @@ new GuiControlProfile (ToolsGuiDefaultProfile) mouseOverSelected = false; // fill color - opaque = true; + opaque = false; fillColor = "50 50 50"; fillColorHL = "91 101 116"; fillColorSEL = "91 101 116"; diff --git a/Templates/BaseGame/game/tools/settings.xml b/Templates/BaseGame/game/tools/settings.xml index 050bbb71f..be6fd5412 100644 --- a/Templates/BaseGame/game/tools/settings.xml +++ b/Templates/BaseGame/game/tools/settings.xml @@ -1,94 +1,128 @@ + + Grid_512_Orange + + + data/FPSGameplay/levels + + + 5 + + + 25 + + + - 0 - 1 screenCenter - 6 + 0 WorldEditorInspectorPlugin + 1 40 - 50 AssetWork_Debug.exe + 6 + 50 + + 255 255 255 255 + 100 100 100 255 + 255 255 0 255 + 255 255 0 255 + 0 0 255 255 + 255 0 0 255 + 0 255 0 255 + + + 48 48 48 255 + 255 255 255 255 + 215 215 215 255 + 180 180 180 255 + 50 50 50 255 + + + 100 + 0 + 0 + 0 + 1 + 2 + 1 + + + 51 51 51 100 + 102 102 102 100 + 1 + 255 255 255 100 + 0 + + + tools/worldEditor/images/DefaultHandle + tools/worldEditor/images/SelectHandle + tools/worldEditor/images/LockedHandle + + + http://www.garagegames.com/products/torque-3d/forums + ../../../Documentation/Official Documentation.html + ../../../Documentation/Torque 3D - Script Manual.chm + http://www.garagegames.com/products/torque-3d/documentation/user + - 8 1 0 255 20 - - - ../../../Documentation/Torque 3D - Script Manual.chm - http://www.garagegames.com/products/torque-3d/documentation/user - ../../../Documentation/Official Documentation.html - http://www.garagegames.com/products/torque-3d/forums + 8 - 1 1 1 + 1 1 1 + + + 0.8 + 100 + 0.8 + 15 + 0 + 0 + 1 - 255 255 255 100 - 0 - 51 51 51 100 - 102 102 102 100 - 1 - - - 2 - 0 - 0 - 1 - 1 - 0 - 100 - - - 48 48 48 255 - 215 215 215 255 - 180 180 180 255 - 255 255 255 255 - 50 50 50 255 - - - 0 0 255 255 - 0 255 0 255 - 255 0 0 255 - 255 255 0 255 - 100 100 100 255 - 255 255 255 255 - 255 255 0 255 - - - tools/worldEditor/images/SelectHandle - tools/worldEditor/images/LockedHandle - tools/worldEditor/images/DefaultHandle + 0 + 255 255 255 20 + 0 + 10 10 10 + 0 + 500 - 1024 768 tools/gui + 1024 768 0 0 0 + + http://www.garagegames.com/products/torque-3d/documentation/user + ../../../Documentation/Torque 3D - Script Manual.chm + ../../../Documentation/Official Documentation.html + 1 - 1 - 1 1 8 + 1 + 1 2 1 0 - - ../../../Documentation/Torque 3D - Script Manual.chm - ../../../Documentation/Official Documentation.html - http://www.garagegames.com/products/torque-3d/documentation/user + + 0 1 @@ -97,37 +131,6 @@ Categorized - - 0 - - - - 0 - 1 - 100 - 15 - 0 - 0.8 - 0.8 - - 0 - 500 - 0 - 255 255 255 20 - 10 10 10 - 0 - - - - data/FPSGameplay/levels - - - 25 - - - - - Grid_512_Orange AIPlayer diff --git a/Templates/BaseGame/game/tools/worldEditor/main.cs b/Templates/BaseGame/game/tools/worldEditor/main.cs index fb985b66b..b524f00ae 100644 --- a/Templates/BaseGame/game/tools/worldEditor/main.cs +++ b/Templates/BaseGame/game/tools/worldEditor/main.cs @@ -135,7 +135,12 @@ function initializeWorldEditor() EVisibility.addOption( "Frustum Lock", "$Scene::lockCull", "" ); EVisibility.addOption( "Disable Zone Culling", "$Scene::disableZoneCulling", "" ); EVisibility.addOption( "Disable Terrain Occlusion", "$Scene::disableTerrainOcclusion", "" ); - + + EVisibility.addOption( "Probes: Attenuation", "$Probes::showAttenuation", "" ); + EVisibility.addOption( "Probes: Specular Cubemaps", "$Probes::showSpecularCubemaps", "" ); + EVisibility.addOption( "Probes: Diffuse Cubemaps", "$Probes::showDiffuseCubemaps", "" ); + EVisibility.addOption( "Probes: Contribution", "$Probes::showProbeContrib", "" ); + EVisibility.addOption( "Colorblindness: Protanopia", "$CBV_Protanopia", "toggleColorBlindnessViz" ); EVisibility.addOption( "Colorblindness: Protanomaly", "$CBV_Protanomaly", "toggleColorBlindnessViz" ); EVisibility.addOption( "Colorblindness: Deuteranopia", "$CBV_Deuteranopia", "toggleColorBlindnessViz" ); diff --git a/Templates/Full/game/Full.torsion.opt b/Templates/Full/game/Full.torsion.opt index f41687c47..2e498d182 100644 --- a/Templates/Full/game/Full.torsion.opt +++ b/Templates/Full/game/Full.torsion.opt @@ -8,13 +8,11 @@ art\main.cs core\main.cs -..\..\Empty\game\core\main.cs -..\..\BaseGame\game\core\main.cs core\scripts\client\postFx\MLAA.cs core\scripts\client\postFx\ssao.cs core\scripts\client\postFx\hdr.cs core\scripts\client\postFx\dof.cs core\scripts\client\postFx\caustics.cs -..\..\..\..\..\RnDBuildTest\My Projects\RnDTest\game\modules\TheFactory\components\FakeGISpotlight.cs +tools\worldEditor\main.cs From f1777016b8c42161857ae42eaee375ef31f2de26 Mon Sep 17 00:00:00 2001 From: Areloch Date: Mon, 17 Jun 2019 02:30:45 -0500 Subject: [PATCH 3/3] GFX card profile config file logging moved to debug only WIP mode of guiSliderCtrl to be a filled rectangle instead of a textured UI Fixed bug with guiTextEditCtrl losing focus updating history passing malformed strings Updated WIP options menu Editor/Project settings WIP Updated editor theme to be consistent, and feed off the editor settings Updated popup menus to reference renamed profiles Added more in-progress modules for examples/stress testing --- Engine/source/gfx/gfxCardProfile.cpp | 5 + Engine/source/gui/controls/guiSliderCtrl.cpp | 44 +- Engine/source/gui/controls/guiSliderCtrl.h | 3 + .../source/gui/controls/guiTextEditCtrl.cpp | 2 +- Engine/source/gui/editor/popupMenu.cpp | 2 +- Engine/source/postFx/postEffect.cpp | 2 +- Templates/BaseGame/game/core/Core.cs | 3 + .../lighting/scripts/advancedLighting_Init.cs | 6 - .../advanced/gl/reflectionProbeP.glsl | 162 ++ .../advanced/gl/reflectionProbeV.glsl | 32 + Templates/BaseGame/game/core/settings.xml | 13 + .../pbr/levels/PbrMatTest.postfxpreset.cs | 53 + .../ui/art/optionsMenuSliderBitmapArray.png | Bin 0 -> 2247 bytes .../game/data/ui/art/slider - Copy.png | Bin 0 -> 908 bytes .../guis/graphicsMenuSettingsSlider.taml | 4 +- .../game/data/ui/scripts/optionsMenu.cs | 72 +- .../BaseGame/game/data/ui/scripts/profiles.cs | 7 + .../assetBrowser/_assetImportConfigs.xml | 34 + .../tools/assetBrowser/guis/assetBrowser.gui | 12 +- .../tools/assetBrowser/guis/assetImport.gui | 6 +- .../tools/assetBrowser/guis/editAsset.gui | 2 +- .../tools/assetBrowser/guis/editModule.gui | 2 +- .../game/tools/assetBrowser/guis/newAsset.gui | 2 +- .../BaseGame/game/tools/assetBrowser/main.cs | 1 + .../convexEditor/convexEditorToolbar.ed.gui | 2 +- .../editorClasses/gui/images/rollout.png | Bin 586 -> 6247 bytes .../gui/panels/navPanelProfiles.ed.cs | 51 - .../game/tools/gui/editorSettingsWindow.ed.cs | 217 ++- .../BaseGame/game/tools/gui/images/button.png | Bin 1153 -> 2944 bytes .../BaseGame/game/tools/gui/images/tab.png | Bin 495 -> 4142 bytes .../BaseGame/game/tools/gui/images/window.png | Bin 861 -> 5308 bytes .../messageBoxOKCancelDetailsDlg.ed.gui | 2 +- .../BaseGame/game/tools/gui/profiles.ed.cs | 381 ++-- .../game/tools/guiEditor/gui/guiEditor.ed.gui | 6 +- .../guiEditor/scripts/guiEditorCanvas.ed.cs | 2 +- .../tools/navEditor/NavEditorSettingsTab.gui | 2 +- Templates/BaseGame/game/tools/settings.xml | 264 +-- .../shapeEditor/gui/ShapeEditorToolbar.ed.gui | 2 +- .../tools/worldEditor/gui/EditorGui.ed.gui | 4 +- .../tools/worldEditor/gui/ToolsToolbar.ed.gui | 4 +- .../worldEditor/gui/WorldEditorToolbar.ed.gui | 12 +- .../gui/WorldEditorTreeWindow.ed.gui | 1 + .../gui/guiWorldEditorCreatorWindow.ed.gui | 1 + .../tools/worldEditor/scripts/lightViz.cs | 7 - .../tools/worldEditor/scripts/menus.ed.cs | 13 +- Templates/Modules/AI_Guard/AI_Guard.cs | 16 + Templates/Modules/AI_Guard/AI_Guard.module | 15 + .../AI_Guard/Datablocks/aiPlayerDatablocks.cs | 53 + .../AI_Guard/Datablocks/aiPlayerMarker.cs | 16 + .../Modules/AI_Guard/Scripts/aiPlayer.cs | 1639 +++++++++++++++++ .../Modules/AI_Guard/Scripts/guardTrigger.cs | 34 + Templates/Modules/PostFXPack/PostFXPack.cs | 9 + .../Modules/PostFXPack/PostFXPack.module | 15 + .../Modules/PostFXPack/Scripts/postFX.cs | 25 + .../Modules/PostFXPack/Scripts/postFXPack.cs | 351 ++++ .../PostFXPack/Shaders/blackAndWhiteP.hlsl | 21 + .../PostFXPack/Shaders/blurredVisionP.hlsl | 29 + .../Shaders/chromaticAberrationP.hlsl | 24 + .../PostFXPack/Shaders/crossStitchP.hlsl | 39 + .../PostFXPack/Shaders/dreamviewP.hlsl | 30 + .../PostFXPack/Shaders/edgeDetectionP.hlsl | 48 + .../PostFXPack/Shaders/lensCircleP.hlsl | 14 + .../PostFXPack/Shaders/monochromeP.hlsl | 13 + .../Modules/PostFXPack/Shaders/negativeP.hlsl | 11 + .../PostFXPack/Shaders/nightVision2P.hlsl | 48 + .../Modules/PostFXPack/Shaders/pixelateP.hlsl | 21 + .../PostFXPack/Shaders/posterisationP.hlsl | 17 + .../Modules/PostFXPack/Shaders/rgbP.hlsl | 16 + .../Modules/PostFXPack/Shaders/zoomBlurP.hlsl | 25 + .../Scripts/RPGDialogEditor/defaults.cs | 5 + .../Scripts/RPGDialogEditor/editorMain.cs | 1378 ++++++++++++++ .../RPGDialogEditor/ingameRPGDialogEditor.cs | 57 + .../RPGDialog/Scripts/RPGDialogEditor/main.cs | 68 + .../Scripts/RPGDialogEditor/prefs.cs | 5 + .../RPGDialogEditor/ui/EditAnswerGui.gui | 131 ++ .../RPGDialogEditor/ui/EditQuestionGui.gui | 161 ++ .../RPGDialogEditor/ui/EditorOpeningGui.gui | 108 ++ .../ui/MainEditorScreenGui.gui | 265 +++ .../RPGDialogEditor/ui/NewScriptPopup.gui | 115 ++ .../RPGDialogEditor/ui/SetPathsPopup.gui | 169 ++ .../Scripts/RPGDialogEditor/ui/background.jpg | Bin 0 -> 152215 bytes .../Scripts/RPGDialogEditor/ui/box.png | Bin 0 -> 6836 bytes .../Scripts/RPGDialogEditor/ui/title.png | Bin 0 -> 85872 bytes .../RPGDialog/Scripts/client/RPGDialog.cs | 205 +++ .../Scripts/client/RPGDialogAudioProfiles.cs | 21 + .../RPGDialog/Scripts/server/RPGDialog.cs | 341 ++++ Templates/Modules/RPGDialog/gui/RPGDialog.gui | 156 ++ Templates/Modules/RPGDialog/gui/dla/test.dla | 3 + Templates/Modules/RPGDialog/gui/dla/test2.dla | 1 + Templates/Modules/RPGDialog/gui/dlq/test.dlq | 3 + Templates/Modules/RPGDialog/gui/dlq/test2.dlq | 1 + .../Modules/RPGDialog/gui/portraits/test.png | Bin 0 -> 2400 bytes .../RPGDialog/gui/portraits/unknown.png | Bin 0 -> 1680 bytes Templates/Modules/RPGDialog/sounds/test.wav | Bin 0 -> 25818 bytes Templates/Modules/RPGDialog/sounds/test2.wav | Bin 0 -> 21870 bytes .../Datablocks/LifelikeEffectsPackExec.cs | 21 + .../Datablocks/LifelikeEmitters.cs | 410 +++++ .../Datablocks/LifelikeExp_ComplexLarge.cs | 238 +++ .../Datablocks/LifelikeExp_ComplexSmall.cs | 238 +++ .../Datablocks/LifelikeExp_FirebombLarge.cs | 319 ++++ .../Datablocks/LifelikeExp_FirebombSmall.cs | 319 ++++ .../Datablocks/LifelikeExp_Flak.cs | 196 ++ .../Datablocks/LifelikeExp_Flashbang.cs | 238 +++ .../Datablocks/LifelikeExp_GroundHitLarge.cs | 208 +++ .../Datablocks/LifelikeExp_GroundHitSmall.cs | 204 ++ .../Datablocks/LifelikeExp_SimpleLarge.cs | 202 ++ .../Datablocks/LifelikeExp_SimpleSmall.cs | 203 ++ .../RealisticVFX/Images/dirtBlast1.png | Bin 0 -> 404142 bytes .../RealisticVFX/Images/dirtDebris.png | Bin 0 -> 140585 bytes .../Modules/RealisticVFX/Images/ember1.png | Bin 0 -> 2725 bytes .../Modules/RealisticVFX/Images/fireball.png | Bin 0 -> 411347 bytes .../Modules/RealisticVFX/Images/fireblast.png | Bin 0 -> 100358 bytes .../Modules/RealisticVFX/Images/flame1.png | Bin 0 -> 66602 bytes .../RealisticVFX/Images/invisibledebris.dts | Bin 0 -> 669 bytes .../RealisticVFX/Images/pointBurst.png | Bin 0 -> 274786 bytes .../Modules/RealisticVFX/Images/smoke1.png | Bin 0 -> 336797 bytes .../Modules/RealisticVFX/Images/smoke2.png | Bin 0 -> 368406 bytes .../Modules/RealisticVFX/Images/spark1.png | Bin 0 -> 37267 bytes .../Modules/RealisticVFX/Images/spark2.png | Bin 0 -> 1515 bytes .../Modules/RealisticVFX/Images/spark3.png | Bin 0 -> 44810 bytes .../Modules/RealisticVFX/RealisticVFX.cs | 23 + .../Modules/RealisticVFX/RealisticVFX.module | 15 + .../Images/512_forestgreen_lines.png | Bin 0 -> 10553 bytes .../512_forestgreen_lines_ALBEDO.asset.taml | 9 + .../TestGrids/Images/Grid_512_black.png | Bin 0 -> 6315 bytes .../Images/Grid_512_black_ALBEDO.asset.taml | 9 + .../TestGrids/Images/Grid_512_blue.png | Bin 0 -> 6592 bytes .../Images/Grid_512_blue_ALBEDO.asset.taml | 9 + .../TestGrids/Images/Grid_512_forestgreen.png | Bin 0 -> 3938 bytes .../Grid_512_forestgreen_ALBEDO.asset.taml | 9 + .../TestGrids/Images/Grid_512_green.png | Bin 0 -> 6622 bytes .../Images/Grid_512_green_ALBEDO.asset.taml | 9 + .../TestGrids/Images/Grid_512_grey.png | Bin 0 -> 4128 bytes .../Images/Grid_512_grey_ALBEDO.asset.taml | 9 + .../TestGrids/Images/Grid_512_grey_base.png | Bin 0 -> 1878 bytes .../Grid_512_grey_base_ALBEDO.asset.taml | 9 + .../TestGrids/Images/Grid_512_orange.png | Bin 0 -> 6295 bytes .../Images/Grid_512_orange_ALBEDO.asset.taml | 9 + .../Images/Grid_512_orange_lines.png | Bin 0 -> 88595 bytes .../Grid_512_orange_lines_ALBEDO.asset.taml | 9 + .../Modules/TestGrids/Images/Grid_512_red.png | Bin 0 -> 6632 bytes .../Images/Grid_512_red_ALBEDO.asset.taml | 9 + Templates/Modules/TestGrids/TestGrids.cs | 8 + Templates/Modules/TestGrids/TestGrids.module | 15 + .../Modules/TestGrids/art/Grid_512_black.png | Bin 0 -> 6315 bytes .../Modules/TestGrids/art/Grid_512_blue.png | Bin 0 -> 6592 bytes .../TestGrids/art/Grid_512_forestgreen.png | Bin 0 -> 3938 bytes .../art/Grid_512_forestgreen_lines.png | Bin 0 -> 10553 bytes .../Modules/TestGrids/art/Grid_512_green.png | Bin 0 -> 6622 bytes .../Modules/TestGrids/art/Grid_512_grey.png | Bin 0 -> 4128 bytes .../TestGrids/art/Grid_512_grey_base.png | Bin 0 -> 1878 bytes .../Modules/TestGrids/art/Grid_512_orange.png | Bin 0 -> 6295 bytes .../TestGrids/art/Grid_512_orange_lines.png | Bin 0 -> 88595 bytes .../Modules/TestGrids/art/Grid_512_red.png | Bin 0 -> 6632 bytes Templates/Modules/TestGrids/art/materials.cs | 91 + .../512_forestgreen_lines.asset.taml | 9 + .../materials/512_forestgreen_lines.cs | 7 + .../materials/Grid_512_black.asset.taml | 9 + .../TestGrids/materials/Grid_512_black.cs | 7 + .../materials/Grid_512_blue.asset.taml | 9 + .../TestGrids/materials/Grid_512_blue.cs | 7 + .../materials/Grid_512_forestgreen.asset.taml | 9 + .../materials/Grid_512_forestgreen.cs | 7 + .../materials/Grid_512_green.asset.taml | 9 + .../TestGrids/materials/Grid_512_green.cs | 7 + .../materials/Grid_512_grey.asset.taml | 9 + .../TestGrids/materials/Grid_512_grey.cs | 7 + .../materials/Grid_512_grey_base.asset.taml | 9 + .../TestGrids/materials/Grid_512_grey_base.cs | 7 + .../materials/Grid_512_orange.asset.taml | 9 + .../TestGrids/materials/Grid_512_orange.cs | 7 + .../Grid_512_orange_lines.asset.taml | 9 + .../materials/Grid_512_orange_lines.cs | 7 + .../materials/Grid_512_red.asset.taml | 9 + .../TestGrids/materials/Grid_512_red.cs | 7 + Templates/Modules/gameUI/GUIs/playGui.cs | 120 ++ Templates/Modules/gameUI/GUIs/playGui.gui | 50 + Templates/Modules/gameUI/gameUI.cs | 14 + Templates/Modules/gameUI/gameUI.module | 15 + 179 files changed, 10144 insertions(+), 415 deletions(-) create mode 100644 Templates/BaseGame/game/core/rendering/shaders/lighting/advanced/gl/reflectionProbeP.glsl create mode 100644 Templates/BaseGame/game/core/rendering/shaders/lighting/advanced/gl/reflectionProbeV.glsl create mode 100644 Templates/BaseGame/game/core/settings.xml create mode 100644 Templates/BaseGame/game/data/pbr/levels/PbrMatTest.postfxpreset.cs create mode 100644 Templates/BaseGame/game/data/ui/art/optionsMenuSliderBitmapArray.png create mode 100644 Templates/BaseGame/game/data/ui/art/slider - Copy.png create mode 100644 Templates/BaseGame/game/tools/assetBrowser/_assetImportConfigs.xml create mode 100644 Templates/Modules/AI_Guard/AI_Guard.cs create mode 100644 Templates/Modules/AI_Guard/AI_Guard.module create mode 100644 Templates/Modules/AI_Guard/Datablocks/aiPlayerDatablocks.cs create mode 100644 Templates/Modules/AI_Guard/Datablocks/aiPlayerMarker.cs create mode 100644 Templates/Modules/AI_Guard/Scripts/aiPlayer.cs create mode 100644 Templates/Modules/AI_Guard/Scripts/guardTrigger.cs create mode 100644 Templates/Modules/PostFXPack/PostFXPack.cs create mode 100644 Templates/Modules/PostFXPack/PostFXPack.module create mode 100644 Templates/Modules/PostFXPack/Scripts/postFX.cs create mode 100644 Templates/Modules/PostFXPack/Scripts/postFXPack.cs create mode 100644 Templates/Modules/PostFXPack/Shaders/blackAndWhiteP.hlsl create mode 100644 Templates/Modules/PostFXPack/Shaders/blurredVisionP.hlsl create mode 100644 Templates/Modules/PostFXPack/Shaders/chromaticAberrationP.hlsl create mode 100644 Templates/Modules/PostFXPack/Shaders/crossStitchP.hlsl create mode 100644 Templates/Modules/PostFXPack/Shaders/dreamviewP.hlsl create mode 100644 Templates/Modules/PostFXPack/Shaders/edgeDetectionP.hlsl create mode 100644 Templates/Modules/PostFXPack/Shaders/lensCircleP.hlsl create mode 100644 Templates/Modules/PostFXPack/Shaders/monochromeP.hlsl create mode 100644 Templates/Modules/PostFXPack/Shaders/negativeP.hlsl create mode 100644 Templates/Modules/PostFXPack/Shaders/nightVision2P.hlsl create mode 100644 Templates/Modules/PostFXPack/Shaders/pixelateP.hlsl create mode 100644 Templates/Modules/PostFXPack/Shaders/posterisationP.hlsl create mode 100644 Templates/Modules/PostFXPack/Shaders/rgbP.hlsl create mode 100644 Templates/Modules/PostFXPack/Shaders/zoomBlurP.hlsl create mode 100644 Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/defaults.cs create mode 100644 Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/editorMain.cs create mode 100644 Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/ingameRPGDialogEditor.cs create mode 100644 Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/main.cs create mode 100644 Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/prefs.cs create mode 100644 Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/ui/EditAnswerGui.gui create mode 100644 Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/ui/EditQuestionGui.gui create mode 100644 Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/ui/EditorOpeningGui.gui create mode 100644 Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/ui/MainEditorScreenGui.gui create mode 100644 Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/ui/NewScriptPopup.gui create mode 100644 Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/ui/SetPathsPopup.gui create mode 100644 Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/ui/background.jpg create mode 100644 Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/ui/box.png create mode 100644 Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/ui/title.png create mode 100644 Templates/Modules/RPGDialog/Scripts/client/RPGDialog.cs create mode 100644 Templates/Modules/RPGDialog/Scripts/client/RPGDialogAudioProfiles.cs create mode 100644 Templates/Modules/RPGDialog/Scripts/server/RPGDialog.cs create mode 100644 Templates/Modules/RPGDialog/gui/RPGDialog.gui create mode 100644 Templates/Modules/RPGDialog/gui/dla/test.dla create mode 100644 Templates/Modules/RPGDialog/gui/dla/test2.dla create mode 100644 Templates/Modules/RPGDialog/gui/dlq/test.dlq create mode 100644 Templates/Modules/RPGDialog/gui/dlq/test2.dlq create mode 100644 Templates/Modules/RPGDialog/gui/portraits/test.png create mode 100644 Templates/Modules/RPGDialog/gui/portraits/unknown.png create mode 100644 Templates/Modules/RPGDialog/sounds/test.wav create mode 100644 Templates/Modules/RPGDialog/sounds/test2.wav create mode 100644 Templates/Modules/RealisticVFX/Datablocks/LifelikeEffectsPackExec.cs create mode 100644 Templates/Modules/RealisticVFX/Datablocks/LifelikeEmitters.cs create mode 100644 Templates/Modules/RealisticVFX/Datablocks/LifelikeExp_ComplexLarge.cs create mode 100644 Templates/Modules/RealisticVFX/Datablocks/LifelikeExp_ComplexSmall.cs create mode 100644 Templates/Modules/RealisticVFX/Datablocks/LifelikeExp_FirebombLarge.cs create mode 100644 Templates/Modules/RealisticVFX/Datablocks/LifelikeExp_FirebombSmall.cs create mode 100644 Templates/Modules/RealisticVFX/Datablocks/LifelikeExp_Flak.cs create mode 100644 Templates/Modules/RealisticVFX/Datablocks/LifelikeExp_Flashbang.cs create mode 100644 Templates/Modules/RealisticVFX/Datablocks/LifelikeExp_GroundHitLarge.cs create mode 100644 Templates/Modules/RealisticVFX/Datablocks/LifelikeExp_GroundHitSmall.cs create mode 100644 Templates/Modules/RealisticVFX/Datablocks/LifelikeExp_SimpleLarge.cs create mode 100644 Templates/Modules/RealisticVFX/Datablocks/LifelikeExp_SimpleSmall.cs create mode 100644 Templates/Modules/RealisticVFX/Images/dirtBlast1.png create mode 100644 Templates/Modules/RealisticVFX/Images/dirtDebris.png create mode 100644 Templates/Modules/RealisticVFX/Images/ember1.png create mode 100644 Templates/Modules/RealisticVFX/Images/fireball.png create mode 100644 Templates/Modules/RealisticVFX/Images/fireblast.png create mode 100644 Templates/Modules/RealisticVFX/Images/flame1.png create mode 100644 Templates/Modules/RealisticVFX/Images/invisibledebris.dts create mode 100644 Templates/Modules/RealisticVFX/Images/pointBurst.png create mode 100644 Templates/Modules/RealisticVFX/Images/smoke1.png create mode 100644 Templates/Modules/RealisticVFX/Images/smoke2.png create mode 100644 Templates/Modules/RealisticVFX/Images/spark1.png create mode 100644 Templates/Modules/RealisticVFX/Images/spark2.png create mode 100644 Templates/Modules/RealisticVFX/Images/spark3.png create mode 100644 Templates/Modules/RealisticVFX/RealisticVFX.cs create mode 100644 Templates/Modules/RealisticVFX/RealisticVFX.module create mode 100644 Templates/Modules/TestGrids/Images/512_forestgreen_lines.png create mode 100644 Templates/Modules/TestGrids/Images/512_forestgreen_lines_ALBEDO.asset.taml create mode 100644 Templates/Modules/TestGrids/Images/Grid_512_black.png create mode 100644 Templates/Modules/TestGrids/Images/Grid_512_black_ALBEDO.asset.taml create mode 100644 Templates/Modules/TestGrids/Images/Grid_512_blue.png create mode 100644 Templates/Modules/TestGrids/Images/Grid_512_blue_ALBEDO.asset.taml create mode 100644 Templates/Modules/TestGrids/Images/Grid_512_forestgreen.png create mode 100644 Templates/Modules/TestGrids/Images/Grid_512_forestgreen_ALBEDO.asset.taml create mode 100644 Templates/Modules/TestGrids/Images/Grid_512_green.png create mode 100644 Templates/Modules/TestGrids/Images/Grid_512_green_ALBEDO.asset.taml create mode 100644 Templates/Modules/TestGrids/Images/Grid_512_grey.png create mode 100644 Templates/Modules/TestGrids/Images/Grid_512_grey_ALBEDO.asset.taml create mode 100644 Templates/Modules/TestGrids/Images/Grid_512_grey_base.png create mode 100644 Templates/Modules/TestGrids/Images/Grid_512_grey_base_ALBEDO.asset.taml create mode 100644 Templates/Modules/TestGrids/Images/Grid_512_orange.png create mode 100644 Templates/Modules/TestGrids/Images/Grid_512_orange_ALBEDO.asset.taml create mode 100644 Templates/Modules/TestGrids/Images/Grid_512_orange_lines.png create mode 100644 Templates/Modules/TestGrids/Images/Grid_512_orange_lines_ALBEDO.asset.taml create mode 100644 Templates/Modules/TestGrids/Images/Grid_512_red.png create mode 100644 Templates/Modules/TestGrids/Images/Grid_512_red_ALBEDO.asset.taml create mode 100644 Templates/Modules/TestGrids/TestGrids.cs create mode 100644 Templates/Modules/TestGrids/TestGrids.module create mode 100644 Templates/Modules/TestGrids/art/Grid_512_black.png create mode 100644 Templates/Modules/TestGrids/art/Grid_512_blue.png create mode 100644 Templates/Modules/TestGrids/art/Grid_512_forestgreen.png create mode 100644 Templates/Modules/TestGrids/art/Grid_512_forestgreen_lines.png create mode 100644 Templates/Modules/TestGrids/art/Grid_512_green.png create mode 100644 Templates/Modules/TestGrids/art/Grid_512_grey.png create mode 100644 Templates/Modules/TestGrids/art/Grid_512_grey_base.png create mode 100644 Templates/Modules/TestGrids/art/Grid_512_orange.png create mode 100644 Templates/Modules/TestGrids/art/Grid_512_orange_lines.png create mode 100644 Templates/Modules/TestGrids/art/Grid_512_red.png create mode 100644 Templates/Modules/TestGrids/art/materials.cs create mode 100644 Templates/Modules/TestGrids/materials/512_forestgreen_lines.asset.taml create mode 100644 Templates/Modules/TestGrids/materials/512_forestgreen_lines.cs create mode 100644 Templates/Modules/TestGrids/materials/Grid_512_black.asset.taml create mode 100644 Templates/Modules/TestGrids/materials/Grid_512_black.cs create mode 100644 Templates/Modules/TestGrids/materials/Grid_512_blue.asset.taml create mode 100644 Templates/Modules/TestGrids/materials/Grid_512_blue.cs create mode 100644 Templates/Modules/TestGrids/materials/Grid_512_forestgreen.asset.taml create mode 100644 Templates/Modules/TestGrids/materials/Grid_512_forestgreen.cs create mode 100644 Templates/Modules/TestGrids/materials/Grid_512_green.asset.taml create mode 100644 Templates/Modules/TestGrids/materials/Grid_512_green.cs create mode 100644 Templates/Modules/TestGrids/materials/Grid_512_grey.asset.taml create mode 100644 Templates/Modules/TestGrids/materials/Grid_512_grey.cs create mode 100644 Templates/Modules/TestGrids/materials/Grid_512_grey_base.asset.taml create mode 100644 Templates/Modules/TestGrids/materials/Grid_512_grey_base.cs create mode 100644 Templates/Modules/TestGrids/materials/Grid_512_orange.asset.taml create mode 100644 Templates/Modules/TestGrids/materials/Grid_512_orange.cs create mode 100644 Templates/Modules/TestGrids/materials/Grid_512_orange_lines.asset.taml create mode 100644 Templates/Modules/TestGrids/materials/Grid_512_orange_lines.cs create mode 100644 Templates/Modules/TestGrids/materials/Grid_512_red.asset.taml create mode 100644 Templates/Modules/TestGrids/materials/Grid_512_red.cs create mode 100644 Templates/Modules/gameUI/GUIs/playGui.cs create mode 100644 Templates/Modules/gameUI/GUIs/playGui.gui create mode 100644 Templates/Modules/gameUI/gameUI.cs create mode 100644 Templates/Modules/gameUI/gameUI.module diff --git a/Engine/source/gfx/gfxCardProfile.cpp b/Engine/source/gfx/gfxCardProfile.cpp index c223aca11..066dd3b3a 100644 --- a/Engine/source/gfx/gfxCardProfile.cpp +++ b/Engine/source/gfx/gfxCardProfile.cpp @@ -41,17 +41,22 @@ void GFXCardProfiler::loadProfileScript(const char* aScriptName) void *data = NULL; U32 dataSize = 0; + Torque::FS::ReadFile( scriptName.c_str(), data, dataSize, true ); if(data == NULL) { +#if TORQUE_DEBUG Con::warnf(" - No card profile %s exists", scriptName.c_str()); +#endif return; } const char *script = static_cast(data); +#if TORQUE_DEBUG Con::printf(" - Loaded card profile %s", scriptName.c_str()); +#endif Con::evaluate(script, false, NULL); delete[] script; diff --git a/Engine/source/gui/controls/guiSliderCtrl.cpp b/Engine/source/gui/controls/guiSliderCtrl.cpp index ad9316216..d84d6311b 100644 --- a/Engine/source/gui/controls/guiSliderCtrl.cpp +++ b/Engine/source/gui/controls/guiSliderCtrl.cpp @@ -89,6 +89,7 @@ IMPLEMENT_CALLBACK( GuiSliderCtrl, onMouseDragged, void, (), (), GuiSliderCtrl::GuiSliderCtrl() : mRange( 0., 1.f ), mTicks( 10 ), + mRenderTicks(true), mSnap( false ), mValue( 0.5f ), mThumbSize( 8, 20 ), @@ -98,7 +99,9 @@ GuiSliderCtrl::GuiSliderCtrl() mDisplayValue( false ), mMouseOver( false ), mDepressed( false ), - mMouseDragged( false ) + mMouseDragged( false ), + mUseFillBar(false), + mFillBarColor(ColorI(255,255,255)) { } @@ -117,6 +120,12 @@ void GuiSliderCtrl::initPersistFields() addProtectedField( "value", TypeF32, Offset( mValue, GuiSliderCtrl ), _setValue, defaultProtectedGetFn, "The value corresponding to the current slider position." ); + addField("useFillBar", TypeBool, Offset(mUseFillBar, GuiSliderCtrl), + "Whether to render the tick marks."); + addField("fillBarColor", TypeColorI, Offset(mFillBarColor, GuiSliderCtrl), + "Whether to render the tick marks."); + addField("renderTicks", TypeBool, Offset(mRenderTicks, GuiSliderCtrl), + "Whether to render the tick marks."); endGroup( "Slider" ); @@ -365,9 +374,18 @@ void GuiSliderCtrl::onRender(Point2I offset, const RectI &updateRect) GFXDrawUtil* drawUtil = GFX->getDrawUtil(); + if (mUseFillBar) + { + + drawUtil->drawRectFill(RectI(offset.x, offset.y, getWidth() * mValue, getHeight()), mFillBarColor); + + renderChildControls(offset, updateRect); + return; + } + if( mHasTexture ) { - if(mTicks > 0) + if(mTicks > 0 && mRenderTicks) { // TODO: tick marks should be positioned based on the bitmap dimensions. Point2I mid(ext.x, ext.y/2); @@ -443,11 +461,14 @@ void GuiSliderCtrl::onRender(Point2I offset, const RectI &updateRect) PrimBuild::vertex2i( pos.x + mid.x, pos.y + mid.y ); // tick marks - for( U32 t = 0; t <= ( mTicks + 1 ); t++ ) + if (mRenderTicks) { - S32 x = (S32)( F32( mid.x - 1 ) / F32( mTicks + 1 ) * F32( t ) ); - PrimBuild::vertex2i( pos.x + x, pos.y + mid.y - mShiftPoint ); - PrimBuild::vertex2i( pos.x + x, pos.y + mid.y + mShiftPoint ); + for (U32 t = 0; t <= (mTicks + 1); t++) + { + S32 x = (S32)(F32(mid.x - 1) / F32(mTicks + 1) * F32(t)); + PrimBuild::vertex2i(pos.x + x, pos.y + mid.y - mShiftPoint); + PrimBuild::vertex2i(pos.x + x, pos.y + mid.y + mShiftPoint); + } } PrimBuild::end(); } @@ -462,11 +483,14 @@ void GuiSliderCtrl::onRender(Point2I offset, const RectI &updateRect) PrimBuild::vertex2i( pos.x + mid.x, pos.y + mid.y ); // tick marks - for( U32 t = 0; t <= ( mTicks + 1 ); t++ ) + if (mRenderTicks) { - S32 y = (S32)( F32( mid.y - 1 ) / F32( mTicks + 1 ) * F32( t ) ); - PrimBuild::vertex2i( pos.x + mid.x - mShiftPoint, pos.y + y ); - PrimBuild::vertex2i( pos.x + mid.x + mShiftPoint, pos.y + y ); + for (U32 t = 0; t <= (mTicks + 1); t++) + { + S32 y = (S32)(F32(mid.y - 1) / F32(mTicks + 1) * F32(t)); + PrimBuild::vertex2i(pos.x + mid.x - mShiftPoint, pos.y + y); + PrimBuild::vertex2i(pos.x + mid.x + mShiftPoint, pos.y + y); + } } PrimBuild::end(); mDisplayValue = false; diff --git a/Engine/source/gui/controls/guiSliderCtrl.h b/Engine/source/gui/controls/guiSliderCtrl.h index 9a70c512e..a8f8b667c 100644 --- a/Engine/source/gui/controls/guiSliderCtrl.h +++ b/Engine/source/gui/controls/guiSliderCtrl.h @@ -39,6 +39,7 @@ class GuiSliderCtrl : public GuiControl Point2F mRange; U32 mTicks; + bool mRenderTicks; bool mSnap; F32 mValue; RectI mThumb; @@ -51,6 +52,8 @@ class GuiSliderCtrl : public GuiControl bool mMouseOver; bool mMouseDragged; bool mHasTexture; + bool mUseFillBar; + ColorI mFillBarColor; enum { diff --git a/Engine/source/gui/controls/guiTextEditCtrl.cpp b/Engine/source/gui/controls/guiTextEditCtrl.cpp index 65bb331a6..076eddc90 100644 --- a/Engine/source/gui/controls/guiTextEditCtrl.cpp +++ b/Engine/source/gui/controls/guiTextEditCtrl.cpp @@ -1246,7 +1246,7 @@ void GuiTextEditCtrl::onLoseFirstResponder() //execute the validate command if( mValidateCommand.isNotEmpty() ) - evaluate( mValidateCommand ); + evaluate( mValidateCommand.c_str() ); onValidate_callback(); diff --git a/Engine/source/gui/editor/popupMenu.cpp b/Engine/source/gui/editor/popupMenu.cpp index 9aef352ca..2c9765f09 100644 --- a/Engine/source/gui/editor/popupMenu.cpp +++ b/Engine/source/gui/editor/popupMenu.cpp @@ -286,7 +286,7 @@ void PopupMenu::showPopup(GuiCanvas *owner, S32 x /* = -1 */, S32 y /* = -1 */) Sim::findObject("PopUpMenuControl", backgroundCtrl); GuiControlProfile* profile; - Sim::findObject("GuiMenubarProfile", profile); + Sim::findObject("ToolsGuiMenuBarProfile", profile); if (!profile) return; diff --git a/Engine/source/postFx/postEffect.cpp b/Engine/source/postFx/postEffect.cpp index 2d1285102..3209192d4 100644 --- a/Engine/source/postFx/postEffect.cpp +++ b/Engine/source/postFx/postEffect.cpp @@ -1703,7 +1703,7 @@ void PostEffect::setShaderConst(const String &name, const F32 &val) void PostEffect::setShaderConst(const String& name, const int& val) { - PROFILE_SCOPE(PostEffect_SetShaderConst_Float); + PROFILE_SCOPE(PostEffect_SetShaderConst_Int); EffectConstTable::Iterator iter = mEffectConsts.find(name); if (iter == mEffectConsts.end()) diff --git a/Templates/BaseGame/game/core/Core.cs b/Templates/BaseGame/game/core/Core.cs index 99efdd706..af6f97b8a 100644 --- a/Templates/BaseGame/game/core/Core.cs +++ b/Templates/BaseGame/game/core/Core.cs @@ -27,6 +27,9 @@ function CoreModule::onCreate(%this) ModuleDatabase.LoadExplicit( "Core_GameObjects" ); ModuleDatabase.LoadExplicit( "Core_ClientServer" ); + new Settings(ProjectSettings) { file = "core/settings.xml"; }; + ProjectSettings.read(); + %prefPath = getPrefpath(); if ( isFile( %prefPath @ "/clientPrefs.cs" ) ) exec( %prefPath @ "/clientPrefs.cs" ); diff --git a/Templates/BaseGame/game/core/lighting/scripts/advancedLighting_Init.cs b/Templates/BaseGame/game/core/lighting/scripts/advancedLighting_Init.cs index c7d357bb8..b34da6d84 100644 --- a/Templates/BaseGame/game/core/lighting/scripts/advancedLighting_Init.cs +++ b/Templates/BaseGame/game/core/lighting/scripts/advancedLighting_Init.cs @@ -47,18 +47,12 @@ function onActivateAdvancedLM() // Enable the offscreen target so that AL will work // with MSAA back buffers and for HDR rendering. AL_FormatToken.enable(); - - // Activate Deferred Shading - AL_DeferredShading.enable(); } function onDeactivateAdvancedLM() { // Disable the offscreen render target. AL_FormatToken.disable(); - - // Deactivate Deferred Shading - AL_DeferredShading.disable(); } function setAdvancedLighting() diff --git a/Templates/BaseGame/game/core/rendering/shaders/lighting/advanced/gl/reflectionProbeP.glsl b/Templates/BaseGame/game/core/rendering/shaders/lighting/advanced/gl/reflectionProbeP.glsl new file mode 100644 index 000000000..fee0b8783 --- /dev/null +++ b/Templates/BaseGame/game/core/rendering/shaders/lighting/advanced/gl/reflectionProbeP.glsl @@ -0,0 +1,162 @@ +//----------------------------------------------------------------------------- +// Copyright (c) 2012 GarageGames, LLC +// +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to +// deal in the Software without restriction, including without limitation the +// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or +// sell copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in +// all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS +// IN THE SOFTWARE. +//----------------------------------------------------------------------------- +#include "../../../gl/hlslCompat.glsl" +#include "shadergen:/autogenConditioners.h" +#include "farFrustumQuad.glsl" +#include "../../../gl/torque.glsl" +#include "../../../gl/lighting.glsl" +#line 27 + +in vec4 pos; +in vec4 wsEyeDir; +in vec4 ssPos; +in vec4 vsEyeDir; + +uniform sampler2D deferredBuffer; +uniform sampler2D colorBuffer; +uniform sampler2D matInfoBuffer; +uniform samplerCube cubeMap; +uniform samplerCube irradianceCubemap; +uniform sampler2D BRDFTexture; +uniform float cubeMips; + +uniform vec4 rtParams0; + +uniform vec3 probeWSPos; +uniform vec3 probeLSPos; +uniform vec4 vsFarPlane; + +uniform float radius; +uniform vec2 attenuation; + +uniform mat4 worldToObj; +uniform mat4 cameraToWorld; + +uniform vec3 eyePosWorld; +uniform vec3 bbMin; +uniform vec3 bbMax; + +uniform float useSphereMode; + +// Box Projected IBL Lighting +// Based on: http://www.gamedev.net/topic/568829-box-projected-cubemap-environment-mapping/ +// and https://seblagarde.wordpress.com/2012/09/29/image-based-lighting-approaches-and-parallax-corrected-cubemap/ +vec3 boxProject(vec3 wsPosition, vec3 reflectDir, vec3 boxWSPos, vec3 boxMin, vec3 boxMax) +{ + vec3 nrdir = reflectDir; + vec3 offset = wsPosition; + vec3 plane1vec = (boxMax - offset) / nrdir; + vec3 plane2vec = (boxMin - offset) / nrdir; + + vec3 furthestPlane = max(plane1vec, plane2vec); + float dist = min(min(furthestPlane.x, furthestPlane.y), furthestPlane.z); + vec3 posonbox = offset + nrdir * dist; + + return posonbox - boxWSPos; +} + +vec3 iblBoxSpecular(vec3 normal, vec3 wsPos, float roughness, vec3 surfToEye, + sampler2D brdfTexture, + samplerCube radianceCube, + vec3 boxPos, + vec3 boxMin, + vec3 boxMax) +{ + float ndotv = clamp(dot(normal, surfToEye), 0.0, 1.0); + + // BRDF + vec2 brdf = textureLod(brdfTexture, vec2(roughness, ndotv),0).xy; + + // Radiance (Specular) + float maxmip = pow(cubeMips+1,2); + float lod = roughness*maxmip; + vec3 r = reflect(surfToEye, normal); + vec3 cubeR = normalize(r); + cubeR = boxProject(wsPos, cubeR, boxPos, boxMin, boxMax); + + vec3 radiance = textureLod(radianceCube, cubeR, lod).xyz * (brdf.x + brdf.y); + + return radiance; +} + +float defineBoxSpaceInfluence(vec3 surfPosWS, vec3 probePos, float radius, float atten) +{ + vec3 surfPosLS = tMul( worldToObj, vec4(surfPosWS,1.0)).xyz; + + vec3 boxMinLS = probePos-(vec3(1,1,1)*radius); + vec3 boxMaxLS = probePos+(vec3(1,1,1)*radius); + + float boxOuterRange = length(boxMaxLS - boxMinLS); + float boxInnerRange = boxOuterRange / atten; + + vec3 localDir = vec3(abs(surfPosLS.x), abs(surfPosLS.y), abs(surfPosLS.z)); + localDir = (localDir - boxInnerRange) / (boxOuterRange - boxInnerRange); + + return max(localDir.x, max(localDir.y, localDir.z)) * -1; +} +out vec4 OUT_col; + +void main() +{ + + // Compute scene UV + vec2 uvScene = getUVFromSSPos( ssPos.xyz/ssPos.w, rtParams0 ); + + //eye ray WS/LS + vec3 vsEyeRay = getDistanceVectorToPlane( -vsFarPlane.w, vsEyeDir.xyz, vsFarPlane ); + vec3 wsEyeRay = tMul(cameraToWorld, vec4(vsEyeRay, 0)).xyz; + + //unpack normal and linear depth + vec4 normDepth = deferredUncondition(deferredBuffer, uvScene); + + //create surface + Surface surface = createSurface( normDepth, colorBuffer, matInfoBuffer, + uvScene, eyePosWorld, wsEyeRay, cameraToWorld); + float blendVal = 1.0; + if(useSphereMode>0) + { + vec3 L = probeWSPos - surface.P; + blendVal = 1.0-length(L)/radius; + clip(blendVal); + } + else + { + float tempAttenVal = 3.5; + blendVal = defineBoxSpaceInfluence(surface.P, probeWSPos, radius, tempAttenVal); + clip(blendVal); + float compression = 0.05; + blendVal=(1.0-compression)+blendVal*compression; + } + //render into the bound space defined above + vec3 surfToEye = normalize(surface.P - eyePosWorld); + vec3 irradiance = textureLod(irradianceCubemap, surface.N,0).xyz; + vec3 specular = iblBoxSpecular(surface.N, surface.P, surface.roughness, surfToEye, BRDFTexture, cubeMap, probeWSPos, bbMin, bbMax); + vec3 F = FresnelSchlickRoughness(surface.NdotV, surface.f0, surface.roughness); + specular *= F; + //energy conservation + vec3 kD = vec3(1.0) - F; + kD *= 1.0 - surface.metalness; + //final diffuse color + vec3 diffuse = kD * irradiance * surface.baseColor.rgb; + + OUT_col = vec4(diffuse + specular * surface.ao, blendVal); +} diff --git a/Templates/BaseGame/game/core/rendering/shaders/lighting/advanced/gl/reflectionProbeV.glsl b/Templates/BaseGame/game/core/rendering/shaders/lighting/advanced/gl/reflectionProbeV.glsl new file mode 100644 index 000000000..5d48e6613 --- /dev/null +++ b/Templates/BaseGame/game/core/rendering/shaders/lighting/advanced/gl/reflectionProbeV.glsl @@ -0,0 +1,32 @@ +#include "shadergen:/autogenConditioners.h" +#include "../../torque.hlsl" + +// This is the shader input +struct Vert +{ + float4 position : POSITION; + float2 uv0 : TEXCOORD0; + float3 wsEyeRay : TEXCOORD1; +}; + +// This is the shader output data. +struct Conn +{ + float4 position : POSITION; + float2 uv0 : TEXCOORD0; + float3 wsEyeRay : TEXCOORD1; +}; + +// Render Target Paramaters +float4 rtParams0; + +Conn main(Vert IN, + uniform float4x4 modelView : register(C0)) +{ + Conn OUT; + OUT.position = IN.position; + OUT.uv0 = viewportCoordToRenderTarget( IN.uv0, rtParams0 ); + OUT.wsEyeRay = IN.wsEyeRay; + return OUT; +} + diff --git a/Templates/BaseGame/game/core/settings.xml b/Templates/BaseGame/game/core/settings.xml new file mode 100644 index 000000000..7e6bf5e0b --- /dev/null +++ b/Templates/BaseGame/game/core/settings.xml @@ -0,0 +1,13 @@ + + + + + core/ + + + + + a + + + diff --git a/Templates/BaseGame/game/data/pbr/levels/PbrMatTest.postfxpreset.cs b/Templates/BaseGame/game/data/pbr/levels/PbrMatTest.postfxpreset.cs new file mode 100644 index 000000000..e9c5e50fc --- /dev/null +++ b/Templates/BaseGame/game/data/pbr/levels/PbrMatTest.postfxpreset.cs @@ -0,0 +1,53 @@ +$PostFXManager::Settings::ColorCorrectionRamp = "core/postFX/images/null_color_ramp.png"; +$PostFXManager::Settings::DOF::BlurCurveFar = "35.2804"; +$PostFXManager::Settings::DOF::BlurCurveNear = "15.3488"; +$PostFXManager::Settings::DOF::BlurMax = "0.897196"; +$PostFXManager::Settings::DOF::BlurMin = "0.261682"; +$PostFXManager::Settings::DOF::EnableAutoFocus = "1"; +$PostFXManager::Settings::DOF::EnableDOF = ""; +$PostFXManager::Settings::DOF::FocusRangeMax = "200.943"; +$PostFXManager::Settings::DOF::FocusRangeMin = "60.7571"; +$PostFXManager::Settings::EnableDOF = "1"; +$PostFXManager::Settings::EnabledSSAO = "1"; +$PostFXManager::Settings::EnableHDR = "1"; +$PostFXManager::Settings::EnableLightRays = "0"; +$PostFXManager::Settings::EnablePostFX = "1"; +$PostFXManager::Settings::EnableSSAO = "1"; +$PostFXManager::Settings::EnableVignette = "1"; +$PostFXManager::Settings::HDR::adaptRate = "2.08"; +$PostFXManager::Settings::HDR::blueShiftColor = "1.05 0.97 1.27"; +$PostFXManager::Settings::HDR::brightPassThreshold = "0.842105"; +$PostFXManager::Settings::HDR::enableBloom = 1; +$PostFXManager::Settings::HDR::enableBlueShift = 0; +$PostFXManager::Settings::HDR::enableToneMapping = "0"; +$PostFXManager::Settings::HDR::gaussMean = "0.378947"; +$PostFXManager::Settings::HDR::gaussMultiplier = "0.0529101"; +$PostFXManager::Settings::HDR::gaussStdDev = "0.380952"; +$PostFXManager::Settings::HDR::keyValue = "0.423469"; +$PostFXManager::Settings::HDR::minLuminace = "0.0204082"; +$PostFXManager::Settings::HDR::whiteCutoff = "0.30102"; +$PostFXManager::Settings::LightRays::brightScalar = 0.75; +$PostFXManager::Settings::LightRays::decay = 1; +$PostFXManager::Settings::LightRays::density = 0.94; +$PostFXManager::Settings::LightRays::numSamples = 40; +$PostFXManager::Settings::LightRays::weight = 5.65; +$PostFXManager::Settings::SSAO::blurDepthTol = 0.001; +$PostFXManager::Settings::SSAO::blurNormalTol = 0.95; +$PostFXManager::Settings::SSAO::lDepthMax = 2; +$PostFXManager::Settings::SSAO::lDepthMin = 0.2; +$PostFXManager::Settings::SSAO::lDepthPow = 0.2; +$PostFXManager::Settings::SSAO::lNormalPow = 2; +$PostFXManager::Settings::SSAO::lNormalTol = -0.5; +$PostFXManager::Settings::SSAO::lRadius = 1; +$PostFXManager::Settings::SSAO::lStrength = 10; +$PostFXManager::Settings::SSAO::overallStrength = 2; +$PostFXManager::Settings::SSAO::quality = "2"; +$PostFXManager::Settings::SSAO::sDepthMax = 1; +$PostFXManager::Settings::SSAO::sDepthMin = 0.1; +$PostFXManager::Settings::SSAO::sDepthPow = 1; +$PostFXManager::Settings::SSAO::sNormalPow = 1; +$PostFXManager::Settings::SSAO::sNormalTol = 0; +$PostFXManager::Settings::SSAO::sRadius = 0.1; +$PostFXManager::Settings::SSAO::sStrength = 6; +$PostFXManager::Settings::Vignette::VMax = 0.85391; +$PostFXManager::Settings::Vignette::VMin = 0.2; diff --git a/Templates/BaseGame/game/data/ui/art/optionsMenuSliderBitmapArray.png b/Templates/BaseGame/game/data/ui/art/optionsMenuSliderBitmapArray.png new file mode 100644 index 0000000000000000000000000000000000000000..bd41c15b7a53ec6e612b28c09b65978ca37000e1 GIT binary patch literal 2247 zcmV;&2srnNP)W&blM4peLP7w7 z|KIit?E(a4{|iyTvh1Jon@lD*HZ~}V`g0k;vnYz%+S-!KR+7Z(?MdV2c%`*9r4qkWpD z*Vfj2J|BW0dc9tyQl&i_%(uBGPoCVpd$*#ZqQAety}iA-xVR9vkW41MUN1?K>+9TL;1_o?48w5dtK!B#{{N8>r7<4!se!m|@Q3OHw@*C#+J`f0y zB z^|rRQ>h=2k7D^a~4F&@Y!yb<(6biZBZU6uZhe0Bdn3gp50s;Vjs!ypLaGY)2G0V#^|dcEW0?s+vpECz3IgEQz`1khj?HG1$z&}pEf+6dY;0^)DwX-2Vx(Xo!2Z_O z*7xt@?{LeMn^|&Hd`z~@!$jS_h!T{xpZoanVeXk@o@q3i3l}bQcXu0&Mu`(l zIu{g0xm+&0-JVD!gf=|+QbR!y#4xP6x%teQGdp+g4242-b949a-zP~jze5uQK^l#w zyu4g4mnRa5P$)!_B*QR5zEvufb#-+FK>z?SGcz+kKfkfDkw?unnM|&%ti0!sZ!R3Lt+ilT)@rq$ zK7G2atxd1jrwM@^IKc1sbKM0109viqY&H`FvHg(z_PO@|!Gi}W)j`T6&*Oq+SuXWg zR#pH2APB;2HfuB*(Rzj`4%jwNa;-&ocemAQS~=%Cyoh3%>moy$y29JWp6FS1CZ+NB9VwnrPAy5oSc%ryU1og*GWF33r>FU zcsxr>OR-oCMbV0iicGuBWfGP+Pl^Fxo0wHxTx>R*D=I27@tZLF(kJvn&>iUa!wx3(9Gd7v>_FOa=l0r_;$XmIzA7 z48Z2*=EB0lt5>f^Mn+OaU)($?SW1*EW(m(QiL@-t1x?f8aMvSwllZ zPfw3H5mDIg8HOQAl9L>yiCKWuNj^o(t*xzBu3V|DtxfM#JdJUb5RFEKG!ZZ#YrT8- z&f#!?Ah>7Go*OrA96NTb5dVZ}n)dm8tE;OJ1eKMQNf5K7P4Y*N9^J8H$I#Hw%a<=F zCnxLc>y1WZ8YxA*aRfmO27^kanw_0pTU+yZJjrCTrlyAPWeIOMBM73?>Gtp6-`(AP z{P^+QHv=B#2qLyc^uw+H$#E zb8~a`_4NjWA@>sWJ1x82?qD!zGMTEXs?q?EfrPnNT@VCGlQ=}}o@H5y#VzNDn>0-) zlS#Q;p5ec_WETv>tgo*}qfs2kQ4~!p)qw2Z$GL@c!LlsFFfy5pPpSd`K2QI%>tFPu V?)q1$s0{!B002ovPDHLkV1nhyLI(f< literal 0 HcmV?d00001 diff --git a/Templates/BaseGame/game/data/ui/art/slider - Copy.png b/Templates/BaseGame/game/data/ui/art/slider - Copy.png new file mode 100644 index 0000000000000000000000000000000000000000..92fee1e9c13401f0b9fb319b14ebd267b7c1c8a0 GIT binary patch literal 908 zcmV;719SX|P)BsNz zeu<3YC~{d@T`O@7=Bqd8zh+r&1N$TtpK!GELCNikCSDYg%%{_tjFWkfZXnes>n;@ zqR|aj)!gZHXh8b=y;^A;kRu8#6pO{!Mvtd3L02hDKJM?<79kE%E?3>4B+0?(MwHD# znh=bupw`5N2ruq9KZs6u_7))i@#~}<;40XaEJtI*eV$Cj55Bf2ineZ<81cX|$A?-K ziRQ$vUFqvirBbh8IBB!lrWT$p@_Epw4{y{Jk<89s7(yreE_ZXgJAlQLOs#F|`{D~e zk1JU{!ht}*1pQDv9-m=Z)*TLqIgIfHJjnm+Zki*YSv0N&+<5q!9OI!(a(m|ZDWCi2 z+7hQAJOK~#FZBQBsFq0$xe508a5Ng7>+0%qd%a%d^ZA(i`uZ`3VWtE40bY>a7M7V# zB!+jkHs_9=>37>2j-V5r7a4n=; z!uTf4JA}`P;v1uD=Z~Jdb2XVYA zW9_{!_Y>&<@ydWoCaW7|c%=l304u9lXbBBDP18sKV$fMbp11YLDqKf%e#(kCvbjnH z0IY2MSwNH|Nr;Cm_2f`8%fP&(pfq1j&P&EykrGAGkevASCV(r$>yDU`^BZRlB!U6C zWJs>$^wwoAh)RXbi7W=16Mq@GgpA26$sz+uYE0GPzMbJE%h#`yBRq)9| zM)ez$XR{;UB9VaZPe36jlnmZKpDj2gSsD4W{t>WPgB5pU{)$x*B(ajOltDF2!h9-! iq)BbrE0*;C1Q-Ck2#=cQD4UW100001gDw+ literal 0 HcmV?d00001 diff --git a/Templates/BaseGame/game/data/ui/scripts/guis/graphicsMenuSettingsSlider.taml b/Templates/BaseGame/game/data/ui/scripts/guis/graphicsMenuSettingsSlider.taml index 4bbc1c982..74a428114 100644 --- a/Templates/BaseGame/game/data/ui/scripts/guis/graphicsMenuSettingsSlider.taml +++ b/Templates/BaseGame/game/data/ui/scripts/guis/graphicsMenuSettingsSlider.taml @@ -89,7 +89,9 @@ isContainer="false" internalName="slider" canSave="true" - canSaveDynamicFields="false" /> + canSaveDynamicFields="false" + renderTicks="false" + useFillBar="true" /> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Templates/BaseGame/game/tools/assetBrowser/guis/assetBrowser.gui b/Templates/BaseGame/game/tools/assetBrowser/guis/assetBrowser.gui index 48f049782..20500af05 100644 --- a/Templates/BaseGame/game/tools/assetBrowser/guis/assetBrowser.gui +++ b/Templates/BaseGame/game/tools/assetBrowser/guis/assetBrowser.gui @@ -323,7 +323,7 @@ minExtent = "64 64"; horizSizing = "relative"; vertSizing = "height"; - profile = "GuiDefaultProfile"; + profile = "ToolsGuiDefaultProfile"; visible = "1"; active = "1"; tooltipProfile = "GuiToolTipProfile"; @@ -345,7 +345,7 @@ minExtent = "16 16"; horizSizing = "right"; vertSizing = "bottom"; - profile = "GuiDefaultProfile"; + profile = "ToolsGuiDefaultProfile"; visible = "1"; active = "1"; tooltipProfile = "GuiToolTipProfile"; @@ -414,7 +414,7 @@ minExtent = "8 2"; horizSizing = "right"; vertSizing = "bottom"; - profile = "GuiDefaultProfile"; + profile = "ToolsGuiDefaultProfile"; visible = "1"; active = "1"; command = "AssetBrowser.showFilterPopup();"; @@ -530,7 +530,7 @@ minExtent = "16 16"; horizSizing = "right"; vertSizing = "bottom"; - profile = "GuiDefaultProfile"; + profile = "ToolsGuiDefaultProfile"; visible = "1"; active = "1"; tooltipProfile = "GuiToolTipProfile"; @@ -657,7 +657,7 @@ minExtent = "8 2"; horizSizing = "right"; vertSizing = "bottom"; - profile = "GuiDefaultProfile"; + profile = "ToolsGuiDefaultProfile"; visible = "1"; active = "1"; command = "AssetBrowser.toggleTagFilterPopup();"; @@ -798,7 +798,7 @@ minExtent = "8 2"; horizSizing = "right"; vertSizing = "bottom"; - profile = "GuiDefaultProfile"; + profile = "ToolsGuiDefaultProfile"; visible = "1"; active = "1"; tooltipProfile = "GuiToolTipProfile"; diff --git a/Templates/BaseGame/game/tools/assetBrowser/guis/assetImport.gui b/Templates/BaseGame/game/tools/assetBrowser/guis/assetImport.gui index f337c946f..d7e82723c 100644 --- a/Templates/BaseGame/game/tools/assetBrowser/guis/assetImport.gui +++ b/Templates/BaseGame/game/tools/assetBrowser/guis/assetImport.gui @@ -85,7 +85,7 @@ minExtent = "8 2"; horizSizing = "width"; vertSizing = "height"; - profile = "GuiScrollProfile"; + profile = "ToolsGuiScrollProfile"; visible = "1"; active = "1"; tooltipProfile = "GuiToolTipProfile"; @@ -243,7 +243,7 @@ minExtent = "8 2"; horizSizing = "width"; vertSizing = "height"; - profile = "GuiScrollProfile"; + profile = "ToolsGuiScrollProfile"; visible = "1"; active = "1"; tooltipProfile = "GuiToolTipProfile"; @@ -574,7 +574,7 @@ minExtent = "8 2"; horizSizing = "width"; vertSizing = "height"; - profile = "GuiScrollProfile"; + profile = "ToolsGuiScrollProfile"; visible = "1"; active = "1"; tooltipProfile = "GuiToolTipProfile"; diff --git a/Templates/BaseGame/game/tools/assetBrowser/guis/editAsset.gui b/Templates/BaseGame/game/tools/assetBrowser/guis/editAsset.gui index 45d411f20..483fe0d80 100644 --- a/Templates/BaseGame/game/tools/assetBrowser/guis/editAsset.gui +++ b/Templates/BaseGame/game/tools/assetBrowser/guis/editAsset.gui @@ -66,7 +66,7 @@ minExtent = "8 2"; horizSizing = "right"; vertSizing = "bottom"; - profile = "GuiScrollProfile"; + profile = "Tools"; visible = "1"; active = "1"; tooltipProfile = "GuiToolTipProfile"; diff --git a/Templates/BaseGame/game/tools/assetBrowser/guis/editModule.gui b/Templates/BaseGame/game/tools/assetBrowser/guis/editModule.gui index 90ff639dd..dbe060f62 100644 --- a/Templates/BaseGame/game/tools/assetBrowser/guis/editModule.gui +++ b/Templates/BaseGame/game/tools/assetBrowser/guis/editModule.gui @@ -66,7 +66,7 @@ minExtent = "8 2"; horizSizing = "right"; vertSizing = "bottom"; - profile = "GuiScrollProfile"; + profile = "ToolsGuiScrollProfile"; visible = "1"; active = "1"; tooltipProfile = "GuiToolTipProfile"; diff --git a/Templates/BaseGame/game/tools/assetBrowser/guis/newAsset.gui b/Templates/BaseGame/game/tools/assetBrowser/guis/newAsset.gui index 09fcb997d..379d6a521 100644 --- a/Templates/BaseGame/game/tools/assetBrowser/guis/newAsset.gui +++ b/Templates/BaseGame/game/tools/assetBrowser/guis/newAsset.gui @@ -196,7 +196,7 @@ minExtent = "8 2"; horizSizing = "right"; vertSizing = "bottom"; - profile = "GuiScrollProfile"; + profile = "ToolsGuiScrollProfile"; visible = "1"; active = "1"; tooltipProfile = "GuiToolTipProfile"; diff --git a/Templates/BaseGame/game/tools/assetBrowser/main.cs b/Templates/BaseGame/game/tools/assetBrowser/main.cs index c5272e44a..394cd47f6 100644 --- a/Templates/BaseGame/game/tools/assetBrowser/main.cs +++ b/Templates/BaseGame/game/tools/assetBrowser/main.cs @@ -22,6 +22,7 @@ if( !isObject( ToolsGuiDefaultNonModalProfile ) ) new GuiControlProfile (ToolsGuiDefaultNonModalProfile : ToolsGuiDefaultProfile) { + opaque = false; modal = false; }; diff --git a/Templates/BaseGame/game/tools/convexEditor/convexEditorToolbar.ed.gui b/Templates/BaseGame/game/tools/convexEditor/convexEditorToolbar.ed.gui index bd76a265e..2e737c942 100644 --- a/Templates/BaseGame/game/tools/convexEditor/convexEditorToolbar.ed.gui +++ b/Templates/BaseGame/game/tools/convexEditor/convexEditorToolbar.ed.gui @@ -114,7 +114,7 @@ canSaveDynamicFields = "0"; Enabled = "1"; isContainer = "1"; - Profile = "menubarProfile"; + Profile = "ToolsMenubarProfile"; HorizSizing = "width"; VertSizing = "bottom"; Position = "195 0"; diff --git a/Templates/BaseGame/game/tools/editorClasses/gui/images/rollout.png b/Templates/BaseGame/game/tools/editorClasses/gui/images/rollout.png index 8ce3f635fdf971502ed0c61f6766d3eef48874f0..39f7caa7eeed7189cd4acac772b33c4c0c47a12a 100644 GIT binary patch literal 6247 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 hRR3Vgj1`x82O}Z4ec diff --git a/Templates/BaseGame/game/tools/editorClasses/gui/panels/navPanelProfiles.ed.cs b/Templates/BaseGame/game/tools/editorClasses/gui/panels/navPanelProfiles.ed.cs index 4f7b12867..2b690ff79 100644 --- a/Templates/BaseGame/game/tools/editorClasses/gui/panels/navPanelProfiles.ed.cs +++ b/Templates/BaseGame/game/tools/editorClasses/gui/panels/navPanelProfiles.ed.cs @@ -28,7 +28,6 @@ singleton GuiControlProfile (NavPanelProfile) category = "Editor"; }; - singleton GuiControlProfile (NavPanel : NavPanelProfile) { bitmap = "./navPanel"; @@ -64,53 +63,3 @@ singleton GuiControlProfile (NavPanelYellow : NavPanelProfile) bitmap = "./navPanel_yellow"; category = "Editor"; }; -singleton GuiControlProfile (menubarProfile : NavPanelProfile) -{ - bitmap = "./menubar"; - category = "Editor"; - - fillColor = "48 48 48"; - fontColor = "215 215 215"; - fontColorHL = "150 150 150"; - borderColor = "34 34 34"; -}; -singleton GuiControlProfile (editorMenubarProfile : NavPanelProfile) -{ - bitmap = "./editor-menubar"; - category = "Editor"; -}; -singleton GuiControlProfile (editorMenu_wBorderProfile : NavPanelProfile) -{ - bitmap = "./menu-fullborder"; - category = "Editor"; -}; -singleton GuiControlProfile (inspectorStyleRolloutProfile : NavPanelProfile) -{ - bitmap = "./inspector-style-rollout"; - category = "Editor"; -}; -singleton GuiControlProfile (inspectorStyleRolloutListProfile : NavPanelProfile) -{ - bitmap = "./inspector-style-rollout-list"; - category = "Editor"; -}; -singleton GuiControlProfile (inspectorStyleRolloutDarkProfile : NavPanelProfile) -{ - bitmap = "./inspector-style-rollout-dark"; - category = "Editor"; -}; -singleton GuiControlProfile (inspectorStyleRolloutInnerProfile : NavPanelProfile) -{ - bitmap = "./inspector-style-rollout_inner"; - category = "Editor"; -}; -singleton GuiControlProfile (inspectorStyleRolloutNoHeaderProfile : NavPanelProfile) -{ - bitmap = "./inspector-style-rollout-noheader"; - category = "Editor"; -}; -singleton GuiControlProfile (IconDropdownProfile : NavPanelProfile) -{ - bitmap = "./icon-dropdownbar"; - category = "Editor"; -}; diff --git a/Templates/BaseGame/game/tools/gui/editorSettingsWindow.ed.cs b/Templates/BaseGame/game/tools/gui/editorSettingsWindow.ed.cs index 373739be3..ba15100ee 100644 --- a/Templates/BaseGame/game/tools/gui/editorSettingsWindow.ed.cs +++ b/Templates/BaseGame/game/tools/gui/editorSettingsWindow.ed.cs @@ -22,19 +22,31 @@ function ESettingsWindow::startup( %this ) { + new ArrayObject(EditorSettingsPageList); + new ArrayObject(GameSettingsPageList); + + %this.addEditorSettingsPage("Axis", "Axis Gizmo"); + %this.addEditorSettingsPage("General", "General Settings"); + %this.addEditorSettingsPage("Camera", "Camera Settings"); + %this.addEditorSettingsPage("SceneEditor", "Scene Editor"); + %this.addEditorSettingsPage("ShapeEditor", "Shape Editor"); + %this.addEditorSettingsPage("NavEditor", "Navigation Editor"); + %this.addEditorSettingsPage("Theme", "Theme"); + + %this.addGameSettingsPage("GameGeneral", "General"); + %this.addGameSettingsPage("Gameplay", "Gameplay"); + %this.addGameSettingsPage("Paths", "Paths"); + %this.addGameSettingsPage("UI", "UI"); + %this.addGameSettingsPage("LevelDefaults", "Level Defaults"); + %this.addGameSettingsPage("GameOptions", "Game Options"); + %this.addGameSettingsPage("AssetManagement", "Asset Management"); + + %this.mode = "Editor"; } function ESettingsWindow::onWake( %this ) { - new ArrayObject(SettingsPageList); - %this.addSettingsPage("Axis", "Axis Gizmo"); - %this.addSettingsPage("General", "General Settings"); - %this.addSettingsPage("Camera", "Camera Settings"); - %this.addSettingsPage("SceneEditor", "Scene Editor"); - %this.addSettingsPage("ShapeEditor", "Shape Editor"); - %this.addSettingsPage("NavEditor", "Navigation Editor"); - ESettingsWindowList.setSelectedById( 1 ); } function ESettingsWindow::hideDialog( %this ) @@ -47,7 +59,6 @@ function ESettingsWindow::ToggleVisibility() if ( ESettingsWindow.visible ) { ESettingsWindow.setVisible(false); - EditorSettings.write(); } else { @@ -59,19 +70,50 @@ function ESettingsWindow::ToggleVisibility() ESettingsWindowList.setSelectedById( 1 ); } -/*function ESettingsWindow::addTabPage( %this, %page ) +function ESettingsWindow::toggleProjectSettings(%this) { - ESettingsWindowTabBook.add( %page ); - ESettingsWindowList.addRow( ESettingsWindowTabBook.getSelectedPage(), %page.text ); - ESettingsWindowList.sort(0); -}*/ - -function ESettingsWindow::addSettingsPage(%this, %settingsPageName, %settingsPageText) -{ - SettingsPageList.add(%settingsPageName, %settingsPageText); + %this.ToggleVisibility(); - ESettingsWindowList.addRow( SettingsPageList.count(), %settingsPageText ); + %count = GameSettingsPageList.count(); + for(%i=0; %i < %count; %i++) + { + %settingsPageText = GameSettingsPageList.getValue(%i); + ESettingsWindowList.addRow( %i, %settingsPageText ); + } ESettingsWindowList.sort(0); + + ESettingsWindowList.setSelectedById( 1 ); + + %this.mode = "Project"; + ESettingsWindow.text = "Game Project Settings"; +} + +function ESettingsWindow::toggleEditorSettings(%this) +{ + %this.ToggleVisibility(); + + %count = EditorSettingsPageList.count(); + for(%i=0; %i < %count; %i++) + { + %settingsPageText = EditorSettingsPageList.getValue(%i); + ESettingsWindowList.addRow( %i, %settingsPageText ); + } + ESettingsWindowList.sort(0); + + ESettingsWindowList.setSelectedById( 1 ); + + %this.mode = "Editor"; + ESettingsWindow.text = "Editor Settings"; +} + +function ESettingsWindow::addEditorSettingsPage(%this, %settingsPageName, %settingsPageText) +{ + EditorSettingsPageList.add(%settingsPageName, %settingsPageText); +} + +function ESettingsWindow::addGameSettingsPage(%this, %settingsPageName, %settingsPageText) +{ + GameSettingsPageList.add(%settingsPageName, %settingsPageText); } //----------------------------------------------------------------------------- @@ -79,10 +121,49 @@ function ESettingsWindow::addSettingsPage(%this, %settingsPageName, %settingsPag function ESettingsWindowList::onSelect( %this, %id, %text ) { SettingsInspector.clearFields(); - %pageName = SettingsPageList.getKey(SettingsPageList.getIndexFromValue(%text)); + + if(ESettingsWindow.mode $= "Editor") + %pageName = EditorSettingsPageList.getKey(EditorSettingsPageList.getIndexFromValue(%text)); + else + %pageName = GameSettingsPageList.getKey(GameSettingsPageList.getIndexFromValue(%text)); + eval("ESettingsWindow.get" @ %pageName @ "Settings();"); } +//Read/write field functions +function SettingsInspector::addSettingsField(%this, %settingsFieldName, %labelText, %fieldType, %tooltip, %fieldData) +{ + %moddedSettingsFieldName = strreplace(%settingsFieldName, "/", "-"); + + if(ESettingsWindow.mode $= "Editor") + %this.addCallbackField(%moddedSettingsFieldName, %labelText, %fieldType, "", EditorSettings.value(%settingsFieldName), %fieldData, "changeEditorSetting"); + else + %this.addCallbackField(%moddedSettingsFieldName, %labelText, %fieldType, "", ProjectSettings.value(%settingsFieldName), %fieldData, "changeEditorSetting"); +} + +function SettingsInspector::changeEditorSetting(%this, %varName, %value) +{ + %varName = strreplace(%varName, "-", "/"); + + echo("Set " @ %varName @ " to be " @ %value); + + if(ESettingsWindow.mode $= "Editor") + EditorSettings.setValue(%varName, %value); + else + ProjectSettings.setValue(%varName, %value); + + //%id = ESettingsWindowList.getSelectedRow(); + //ESettingsWindowList.setSelectedRow(%id); + + if(ESettingsWindow.mode $= "Editor") + %success = EditorSettings.write(); + else + %success = ProjectSettings.write(); +} + +// +// COMMON EDITOR SETTINGS +// function ESettingsWindow::getAxisSettings(%this) { SettingsInspector.startGroup("Gizmo"); @@ -182,21 +263,89 @@ function ESettingsWindow::getShapeEditorSettings(%this) SettingsInspector.endGroup(); } -//Read/write field functions -function SettingsInspector::addSettingsField(%this, %settingsFieldName, %labelText, %fieldType, %tooltip, %fieldData) +function ESettingsWindow::getThemeSettings(%this) { - %moddedSettingsFieldName = strreplace(%settingsFieldName, "/", "-"); - %this.addCallbackField(%moddedSettingsFieldName, %labelText, %fieldType, "", EditorSettings.value(%settingsFieldName), %fieldData, "changeEditorSetting"); -} + SettingsInspector.startGroup("Colors"); + SettingsInspector.addSettingsField("Theme/headerColor", "Headerbar Color", "ColorI", ""); + SettingsInspector.addSettingsField("Theme/windowBackgroundColor", "Window Background Color", "ColorI", ""); + + SettingsInspector.addSettingsField("Theme/tabsColor", "Tabs Color", "ColorI", ""); + SettingsInspector.addSettingsField("Theme/tabsHLColor", "Tabs Highlight Color", "ColorI", ""); + SettingsInspector.addSettingsField("Theme/tabsSELColor", "Tabs Selected Color", "ColorI", ""); + + SettingsInspector.addSettingsField("Theme/dividerDarkColor", "Divider Dark Color", "ColorI", ""); + SettingsInspector.addSettingsField("Theme/dividerMidColor", "Divider Mid Color", "ColorI", ""); + SettingsInspector.addSettingsField("Theme/dividerLightColor", "Divider Light Color", "ColorI", ""); + + SettingsInspector.addSettingsField("Theme/headerTextColor", "Header Text Color", "ColorI", ""); + + SettingsInspector.addSettingsField("Theme/fieldTextColor", "Field Text Color", "ColorI", ""); + SettingsInspector.addSettingsField("Theme/fieldTextHLColor", "Field Text Highlight Color", "ColorI", ""); + SettingsInspector.addSettingsField("Theme/fieldTextSELColor", "Field Text Selected Color", "ColorI", ""); + + SettingsInspector.addSettingsField("Theme/fieldBGColor", "Field Background Color", "ColorI", ""); + SettingsInspector.addSettingsField("Theme/fieldBGHLColor", "Field Background Highlight Color", "ColorI", ""); + SettingsInspector.addSettingsField("Theme/fieldBGSELColor", "Field Background Selected Color", "ColorI", ""); + + SettingsInspector.addSettingsField("Theme/tooltipBGColor", "Tooltip Background Color", "ColorI", ""); + SettingsInspector.addSettingsField("Theme/tooltipTextColor", "Tooltip Text Highlight Color", "ColorI", ""); + SettingsInspector.addSettingsField("Theme/tooltipDivColor", "Tooltip Divider Color", "ColorI", ""); + SettingsInspector.endGroup(); +} +// +// COMMON GAME SETTINGS +// +function ESettingsWindow::getGameGeneralSettings(%this) +{ + SettingsInspector.startGroup("General"); + SettingsInspector.addSettingsField("General/ProjectName", "Project Name", "string", ""); + SettingsInspector.endGroup(); +} -function SettingsInspector::changeEditorSetting(%this, %varName, %value) +function ESettingsWindow::getPathsSettings(%this) { - %varName = strreplace(%varName, "-", "/"); + SettingsInspector.startGroup("Paths"); + SettingsInspector.addSettingsField("Paths/splashImagePath", "Splash Image", "filename", ""); + SettingsInspector.addSettingsField("Paths/iconImagePath", "Icon Image", "filename", ""); + SettingsInspector.addSettingsField("Paths/missingTexturePath", "Missing Texture Image", "filename", ""); + SettingsInspector.addSettingsField("Paths/noMaterialPath", "No Material Image", "filename", ""); + SettingsInspector.addSettingsField("Paths/errorMaterialMath", "Error Material Image", "filename", ""); + SettingsInspector.endGroup(); +} + +function ESettingsWindow::getUISettings(%this) +{ + SettingsInspector.startGroup("UI"); + SettingsInspector.addSettingsField("UI/playGUIName", "Play GUI Name", "string", ""); + SettingsInspector.addSettingsField("UI/mainMenuName", "Main Menu GUI Name", "string", ""); + SettingsInspector.endGroup(); +} + +function ESettingsWindow::getAssetManagementSettings(%this) +{ + SettingsInspector.startGroup("Modules"); + SettingsInspector.addSettingsField("AssetManagement/Modules/coreModulePath", "Core Module Path", "string", ""); + SettingsInspector.addSettingsField("AssetManagement/Modules/gameDataModulePath", "Game Data Module Path", "string", ""); + SettingsInspector.addSettingsField("AssetManagement/Modules/moduleExtension", "Module Extension", "string", ""); + SettingsInspector.endGroup(); - echo("Set " @ %varName @ " to be " @ %value); - - EditorSettings.setValue(%varName, %value); - - %id = ESettingsWindowList.getSelectedRow(); - ESettingsWindowList.setSelectedRow(%id); -} \ No newline at end of file + SettingsInspector.startGroup("Assets"); + SettingsInspector.addSettingsField("AssetManagement/Assets/assetExtension", "Asset Extension", "string", ""); + SettingsInspector.addSettingsField("AssetManagement/Assets/datablockCaching", "Cache Datablocks", "bool", ""); + //SettingsInspector.addSettingsField("AssetManagement/Assets/moduleExtension", "Module Extension", "string", ""); + SettingsInspector.endGroup(); +} + +function ESettingsWindow::getGameplaySettings(%this) +{ + SettingsInspector.startGroup("Game Modes"); + SettingsInspector.addSettingsField("Gameplay/GameModes/defaultModeName", "Default Gamemode Name", "string", ""); + SettingsInspector.endGroup(); +} + +function ESettingsWindow::getGameOptionsSettings(%this) +{ + SettingsInspector.startGroup("Game Modes"); + SettingsInspector.addSettingsField("Gameplay/GameModes/defaultModeName", "Default Gamemode Name", "string", ""); + SettingsInspector.endGroup(); +} \ No newline at end of file diff --git a/Templates/BaseGame/game/tools/gui/images/button.png b/Templates/BaseGame/game/tools/gui/images/button.png index 1c7361e25e5f19d68d0029199ada0b836793d137..79c3e391b039259875611f9e86eff774afd1f0f7 100644 GIT binary patch delta 2938 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 delta 1133 zcmV-z1d{uJ7l8?oBYyxHbVXQnQ*UN;cVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU$ zBS}O-RCwC#SUXP}K@c9FPYw^8m%%oMfKd_!DTF2uT7E!iNEt<0)D@a$l(zpqg%($>2F^?<-zaw4^2%?<=58M^0X0) zgiXbfhkTren1pZc@9&59HZL3>9n!a9uN8(P5BaLafC_wFU0rZ?c6O;XBMYWQE6v8GkC&RCUY?k0YNsT4tK4n*?LNiEs(ZY-L*@bB{qhhI4Vw0{%?~)AKjE zgrlP)+B>*0-+0_nSAPS$pm63X21`)RTS8vpe4rTkKsiqVw?%n_ZOos)jn~@+^G@SN zG)e^<8}q{B{At8(jI6J(Lv2kBagw4sOVJ6#k%xRWHh)qDqcbxzkV>baqqCC|vDXU2 zk%xSoN1b>oyQXJnXMso|DwAJ}^{W7M%U zpy1kVHXB&2){D2zVkzOt3`8j_vG5A69MVuTlgg&HidbOI5-RG%$}hp3(>ORd2u`OH zs;jHvX>Tw5Tw2l*wfOk>c=0qw5{bl>-Wrd`OMml1I2?w}&CL=YXocZ8d1>iKX5Z&_X_yIzo4y?||gejfVNUfUS%a=B=|pytv-Ucmc5K5T7mrDWD? z8{)WIeSLj5P%q5S%|Sf&hl1N%n>wK%5P6O~VZA`LNrl5{mBfcs65yo@)X**&DG-Ey zp??L^buD1Y#VE;GZodWWxlx)F;j)IJ>2)eDP;kK#L?)P*Tnh$X;6%6q3(P%@>12|E z*lUI1qSJ`=f)69jGP%ZKs8|+U^B9giu3qrTYP}G|Fr`MCVy{y|aGcE53&C4ZFT8s5 z0Y=`xc9OA|i0#>nm!a>A3(vJg4$oqA8-E%5x{G-~6Bd*=<0K3Bx${ZZ% z6fhhM@ED1WN-h^6N)z}YdE2~gqz15GD!Jknz~iA|-^;eqRz<+8RIXTX;5>6~DCn36 z4<8kQhQ`KFa(`dv11%o@{fjzQ7MXnIe}UX7C{KZTcjdcXxV{2&PNU21DFXL9I%Yx} z(Wve;YVn=zEqWU9JIJ1#oaiEtQA9$?o}Pjl8|jA>KS-w_o6TNI!6|uJDn&CDtvV!( zuH-=^mE6xJ{_apB_F7?hI-SZQALk+VPk;dcQd{ugkdaD=00000NkvXXu0mjfl*|)v diff --git a/Templates/BaseGame/game/tools/gui/images/tab.png b/Templates/BaseGame/game/tools/gui/images/tab.png index 76080d74d1a508f68e6d04bc88b9eb806f4b50b2..b7b7c98717c835e4a540ec7c93c26af799ce5f53 100644 GIT binary patch delta 4125 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 KRjpC64gVLSU(8$p literal 495 zcmeAS@N?(olHy`uVBq!ia0vp^&Oltj!3HE(mix;BDVAa<&kznEsNqQI0P;BtJR*x3 z82FBWFymBhK53w!WQl7;NpOBzNqJ&XDnogBxn5>oc5!lIL8@MUQTpt6Hc|`>j5(ez zjv*Cu-rh3Ix*H(iaB=yAxf)&z-_&asCLV9y+jgHr)bC|<%}j;a{k+e&FemL$5N%#| z-7tY3%xAKZ@(^>(;+s``z+w#{JVzjpoJ2{d+BGZ&$tYy-$yT@(~V0CtQ>o z`$O}~Hs`~W|I}7V*+2hz?f0CrE${ce=R1_%A(+%6q3DK#D*wGtp6~wbT37kI*BvdE zrADqhR#8zSvwzxCh!NXz2^(>Hn=HbJKZ-K@Bym~?cFGTD3z?R~*+Tf-ML_N&|J$pP V&L^+VKL(5(22WQ%mvv4FO#q@{v@!qy diff --git a/Templates/BaseGame/game/tools/gui/images/window.png b/Templates/BaseGame/game/tools/gui/images/window.png index 4d264bb24044980f1968e62d94032d57a08243c1..9aff5d276027ca3e67a5877fd8cd2c7930720a75 100644 GIT binary patch literal 5308 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 bK%MWfG^ro4<0R$g{&9h7FI1t*HWB{=9-9^C literal 861 zcmeAS@N?(olHy`uVBq!ia0vp^4nSPS!3HENyr$*>DVAa<&kznEsNqQI0P;BtJR*x3 z82FBWFymBhK53w!WQl7;NpOBzNqJ&XDnogBxn5>oc5!lIL8@MUQTpt6Hc|`>Ot(B; z978JRyq&u@?{a`d+x_=fZte;;l;G41>f1btJHai)!-FTZJT2i7+l`F;hOHciPLexW z*jhexDoM;@oN62W=(FLI_Dk}C(v!kZ{+zdT+v~-4RW&l#mpi*Mx*qbF?8vpkMB=yp z<5zt<^=|%T{##cc9y*`l#!Oi&(TRusmVeHR6!Q7ELrSqld{xwzsI}>D%YIuk@US)C zo_z9&gGwd%@n|{QmF9KXZJmxK#eH{xH?QF+`wRI;Y_-lXMGf z0{4cE3^|NuVhy?njxlXuy%E8%jbZi^<{P&YCOdvJ+u;b}OLHF(OGswC!IY!J5Z%xV z(&TB^u$R|NG9|wmzajIUZ)KXp)4pTs^R0CrlMPoZF*kgyh{+C^`#E}T*jvNZDnHLN zV49BANht^3r>=e-^!?AW - - Grid_512_Orange + + 72 70 68 255 + 234 232 230 255 + 100 98 96 255 + 96 94 92 255 + 59 58 57 255 + 50 49 48 255 + 72 70 68 255 + 50 49 48 255 + 240 240 240 255 + 59 58 57 255 + 236 234 232 255 + 50 49 48 255 + 37 36 35 255 + 178 175 172 255 + 43 43 43 255 + 17 16 15 255 + 255 255 255 255 + 32 31 30 255 + + + tools/gui + 1024 768 + + http://www.garagegames.com/products/torque-3d/documentation/user + ../../../Documentation/Torque 3D - Script Manual.chm + ../../../Documentation/Official Documentation.html + + + 1 + 2 + 8 + 1 + 1 + 1 + 0 + 1 + + + 1 + 1 + + + 0 + 0 + 0 + + + Categorized + + + 0 + + + + 0 + 1 + 0.8 + 100 + 0.8 + 15 + 0 + + 0 + 0 + 0 + 500 + 10 10 10 + 255 255 255 20 + + + + 0 + 50 + AssetWork_Debug.exe + 40 + screenCenter + 6 + 1 + WorldEditorInspectorPlugin + + 255 255 0 255 + 255 0 0 255 + 255 255 255 255 + 255 255 0 255 + 0 0 255 255 + 0 255 0 255 + 100 100 100 255 + + + 1 + 100 + 0 + 0 + 0 + 1 + 2 + + + 1 + 0 + 255 + 20 + 8 + + + 50 50 50 255 + 215 215 215 255 + 48 48 48 255 + 255 255 255 255 + 180 180 180 255 + + + tools/worldEditor/images/DefaultHandle + tools/worldEditor/images/SelectHandle + tools/worldEditor/images/LockedHandle + + + 1 + 1 + 1 + 1 + 1 + + + 51 51 51 100 + 0 + 255 255 255 100 + 1 + 102 102 102 100 + + + ../../../Documentation/Official Documentation.html + ../../../Documentation/Torque 3D - Script Manual.chm + http://www.garagegames.com/products/torque-3d/documentation/user + http://www.garagegames.com/products/torque-3d/forums + + + + AIPlayer data/FPSGameplay/levels @@ -14,125 +152,7 @@ - - screenCenter - 0 - WorldEditorInspectorPlugin - 1 - 40 - AssetWork_Debug.exe - 6 - 50 - - 255 255 255 255 - 100 100 100 255 - 255 255 0 255 - 255 255 0 255 - 0 0 255 255 - 255 0 0 255 - 0 255 0 255 - - - 48 48 48 255 - 255 255 255 255 - 215 215 215 255 - 180 180 180 255 - 50 50 50 255 - - - 100 - 0 - 0 - 0 - 1 - 2 - 1 - - - 51 51 51 100 - 102 102 102 100 - 1 - 255 255 255 100 - 0 - - - tools/worldEditor/images/DefaultHandle - tools/worldEditor/images/SelectHandle - tools/worldEditor/images/LockedHandle - - - http://www.garagegames.com/products/torque-3d/forums - ../../../Documentation/Official Documentation.html - ../../../Documentation/Torque 3D - Script Manual.chm - http://www.garagegames.com/products/torque-3d/documentation/user - - - 1 - 0 - 255 - 20 - 8 - - - 1 - 1 - 1 - 1 - 1 - - - - 0.8 - 100 - 0.8 - 15 - 0 - 0 - 1 - - 0 - 255 255 255 20 - 0 - 10 10 10 - 0 - 500 - - - - tools/gui - 1024 768 - - 0 - 0 - 0 - - - http://www.garagegames.com/products/torque-3d/documentation/user - ../../../Documentation/Torque 3D - Script Manual.chm - ../../../Documentation/Official Documentation.html - - - 1 - 1 - 8 - 1 - 1 - 2 - 1 - 0 - - - 0 - - - 1 - 1 - - - Categorized - - - - AIPlayer + + Grid_512_Orange diff --git a/Templates/BaseGame/game/tools/shapeEditor/gui/ShapeEditorToolbar.ed.gui b/Templates/BaseGame/game/tools/shapeEditor/gui/ShapeEditorToolbar.ed.gui index 0435e3837..ccaaf03fb 100644 --- a/Templates/BaseGame/game/tools/shapeEditor/gui/ShapeEditorToolbar.ed.gui +++ b/Templates/BaseGame/game/tools/shapeEditor/gui/ShapeEditorToolbar.ed.gui @@ -25,7 +25,7 @@ canSaveDynamicFields = "0"; Enabled = "1"; isContainer = "1"; - Profile = "menubarProfile"; + Profile = "ToolsMenubarProfile"; HorizSizing = "width"; VertSizing = "bottom"; Position = "0 0"; diff --git a/Templates/BaseGame/game/tools/worldEditor/gui/EditorGui.ed.gui b/Templates/BaseGame/game/tools/worldEditor/gui/EditorGui.ed.gui index f860bdd42..33433fa68 100644 --- a/Templates/BaseGame/game/tools/worldEditor/gui/EditorGui.ed.gui +++ b/Templates/BaseGame/game/tools/worldEditor/gui/EditorGui.ed.gui @@ -23,7 +23,7 @@ canSaveDynamicFields = "0"; Enabled = "1"; isContainer = "1"; - Profile = "menubarProfile"; + Profile = "ToolsMenubarProfile"; HorizSizing = "width"; VertSizing = "bottom"; Position = "0 0"; @@ -313,7 +313,7 @@ canSaveDynamicFields = "0"; Enabled = "1"; isContainer = "1"; - Profile = "menubarProfile"; + Profile = "ToolsMenubarProfile"; HorizSizing = "width"; VertSizing = "top"; Position = "0 578"; diff --git a/Templates/BaseGame/game/tools/worldEditor/gui/ToolsToolbar.ed.gui b/Templates/BaseGame/game/tools/worldEditor/gui/ToolsToolbar.ed.gui index f57c39be7..1f15e5310 100644 --- a/Templates/BaseGame/game/tools/worldEditor/gui/ToolsToolbar.ed.gui +++ b/Templates/BaseGame/game/tools/worldEditor/gui/ToolsToolbar.ed.gui @@ -4,7 +4,7 @@ Enabled = "0"; internalName = "ToolsToolbar"; isContainer = "1"; - Profile = "editorMenubarProfile"; + Profile = "ToolsMenubarProfile"; HorizSizing = "right"; VertSizing = "bottom"; Position = "0 31"; @@ -20,7 +20,7 @@ canSaveDynamicFields = "0"; Enabled = "1"; isContainer = "1"; - Profile = "ToolsGuiDefaultProfile"; + Profile = "ToolsMenubarProfile"; HorizSizing = "width"; VertSizing = "bottom"; position = "4 3"; diff --git a/Templates/BaseGame/game/tools/worldEditor/gui/WorldEditorToolbar.ed.gui b/Templates/BaseGame/game/tools/worldEditor/gui/WorldEditorToolbar.ed.gui index 79f34211d..95e48baaf 100644 --- a/Templates/BaseGame/game/tools/worldEditor/gui/WorldEditorToolbar.ed.gui +++ b/Templates/BaseGame/game/tools/worldEditor/gui/WorldEditorToolbar.ed.gui @@ -4,7 +4,7 @@ internalName = "WorldEditorToolbar"; Enabled = "1"; isContainer = "1"; - Profile = "ToolsGuiDefaultProfile"; + Profile = "ToolsMenubarProfile"; HorizSizing = "right"; VertSizing = "bottom"; Position = "306 0"; @@ -21,7 +21,7 @@ canSaveDynamicFields = "0"; Enabled = "1"; isContainer = "1"; - Profile = "ToolsGuiDefaultProfile"; + Profile = "ToolsMenubarProfile"; HorizSizing = "width"; VertSizing = "bottom"; Position = "0 3"; @@ -83,7 +83,7 @@ new GuiControl(SnapToBar){ isContainer = "1"; - profile = "ToolsGuiDefaultProfile"; + profile = "ToolsMenubarProfile"; Position = "116 3"; Extent = "123 27"; Padding = "4"; @@ -296,7 +296,7 @@ new GuiControl(ToggleButtonBar){ isContainer = "1"; - profile = "ToolsGuiDefaultProfile"; + profile = "ToolsMenubarProfile"; Position = "313 3"; Extent = "65 27"; @@ -377,7 +377,7 @@ new GuiControl(ToggleNodeBar){ isContainer = "1"; - profile = "ToolsGuiDefaultProfile"; + profile = "ToolsMenubarProfile"; Position = "386 3"; Extent = "63 27"; @@ -441,7 +441,7 @@ new GuiControl(PrefabBar){ isContainer = "1"; - profile = "ToolsGuiDefaultProfile"; + profile = "ToolsMenubarProfile"; Position = "386 3"; Extent = "63 27"; visible = true; diff --git a/Templates/BaseGame/game/tools/worldEditor/gui/WorldEditorTreeWindow.ed.gui b/Templates/BaseGame/game/tools/worldEditor/gui/WorldEditorTreeWindow.ed.gui index cae52e378..92966857f 100644 --- a/Templates/BaseGame/game/tools/worldEditor/gui/WorldEditorTreeWindow.ed.gui +++ b/Templates/BaseGame/game/tools/worldEditor/gui/WorldEditorTreeWindow.ed.gui @@ -274,6 +274,7 @@ canSave = "1"; Visible = "1"; tooltipprofile = "ToolsGuiToolTipProfile"; + profile = "ToolsGuiScrollProfile"; hovertime = "1000"; Docking = "Client"; Margin = "0 0 0 0"; diff --git a/Templates/BaseGame/game/tools/worldEditor/gui/guiWorldEditorCreatorWindow.ed.gui b/Templates/BaseGame/game/tools/worldEditor/gui/guiWorldEditorCreatorWindow.ed.gui index 03a3d6d8a..31652d293 100644 --- a/Templates/BaseGame/game/tools/worldEditor/gui/guiWorldEditorCreatorWindow.ed.gui +++ b/Templates/BaseGame/game/tools/worldEditor/gui/guiWorldEditorCreatorWindow.ed.gui @@ -79,6 +79,7 @@ canSave = "1"; Visible = "1"; tooltipprofile = "ToolsGuiToolTipProfile"; + profile = "ToolsGuiScrollProfile"; hovertime = "1000"; Docking = "Client"; Margin = "0 0 0 0"; diff --git a/Templates/BaseGame/game/tools/worldEditor/scripts/lightViz.cs b/Templates/BaseGame/game/tools/worldEditor/scripts/lightViz.cs index 574063460..1b2e5de3d 100644 --- a/Templates/BaseGame/game/tools/worldEditor/scripts/lightViz.cs +++ b/Templates/BaseGame/game/tools/worldEditor/scripts/lightViz.cs @@ -51,13 +51,11 @@ function toggleColorBufferViz( %enable ) } else if ( %enable ) { - AL_DeferredShading.disable(); AL_ColorBufferVisualize.enable(); } else if ( !%enable ) { AL_ColorBufferVisualize.disable(); - AL_DeferredShading.enable(); } } @@ -360,12 +358,7 @@ function toggleBackbufferViz( %enable ) if ( %enable $= "" ) { $AL_BackbufferVisualizeVar = AL_DeferredShading.isEnabled() ? true : false; - AL_DeferredShading.toggle(); } - else if ( %enable ) - AL_DeferredShading.disable(); - else if ( !%enable ) - AL_DeferredShading.enable(); } function toggleColorBlindnessViz( %enable ) diff --git a/Templates/BaseGame/game/tools/worldEditor/scripts/menus.ed.cs b/Templates/BaseGame/game/tools/worldEditor/scripts/menus.ed.cs index 7f87df251..43bb65ea4 100644 --- a/Templates/BaseGame/game/tools/worldEditor/scripts/menus.ed.cs +++ b/Templates/BaseGame/game/tools/worldEditor/scripts/menus.ed.cs @@ -116,7 +116,7 @@ function EditorGui::buildMenus(%this) extent = Canvas.extent.x SPC "20"; minExtent = "320 20"; horizSizing = "width"; - profile = "GuiMenuBarProfile"; + profile = "ToolsGuiMenuBarProfile"; }; // File Menu @@ -185,11 +185,12 @@ function EditorGui::buildMenus(%this) Item[9] = "Select..." TAB "" TAB "EditorGui.toggleObjectSelectionsWindow();"; item[10] = "-"; item[11] = "Audio Parameters..." TAB "" TAB "EditorGui.toggleSFXParametersWindow();"; - item[12] = "Editor Settings..." TAB "" TAB "ESettingsWindow.ToggleVisibility();"; - item[13] = "Snap Options..." TAB "" TAB "ESnapOptions.ToggleVisibility();"; - item[14] = "-"; - item[15] = "Game Options..." TAB "" TAB "Canvas.pushDialog(optionsDlg);"; - item[16] = "PostEffect Manager" TAB "" TAB "Canvas.pushDialog(PostFXManager);"; + item[12] = "Editor Settings..." TAB "" TAB "ESettingsWindow.toggleEditorSettings();"; + item[13] = "Game Settings..." TAB "" TAB "ESettingsWindow.toggleProjectSettings();"; + item[14] = "Snap Options..." TAB "" TAB "ESnapOptions.ToggleVisibility();"; + item[15] = "-"; + item[16] = "Game Options..." TAB "" TAB "Canvas.pushDialog(optionsDlg);"; + item[17] = "PostEffect Manager" TAB "" TAB "Canvas.pushDialog(PostFXManager);"; }; %this.menuBar.insert(%editMenu); diff --git a/Templates/Modules/AI_Guard/AI_Guard.cs b/Templates/Modules/AI_Guard/AI_Guard.cs new file mode 100644 index 000000000..abbf83314 --- /dev/null +++ b/Templates/Modules/AI_Guard/AI_Guard.cs @@ -0,0 +1,16 @@ +function AI_Guard::onCreate(%this) +{ + exec("./Scripts/aiPlayer.cs"); + exec("./Scripts/guardTrigger.cs"); + + if(isObject(DatablockFilesList)) + { + DatablockFilesList.add( "data/AI_Guard/Datablocks/aiPlayerDatablocks.cs" ); + DatablockFilesList.add( "data/AI_Guard/Datablocks/aiPlayerMarker.cs" ); + } +} + +function AI_Guard::onDestroy(%this) +{ +} + diff --git a/Templates/Modules/AI_Guard/AI_Guard.module b/Templates/Modules/AI_Guard/AI_Guard.module new file mode 100644 index 000000000..dab279ed2 --- /dev/null +++ b/Templates/Modules/AI_Guard/AI_Guard.module @@ -0,0 +1,15 @@ + + + diff --git a/Templates/Modules/AI_Guard/Datablocks/aiPlayerDatablocks.cs b/Templates/Modules/AI_Guard/Datablocks/aiPlayerDatablocks.cs new file mode 100644 index 000000000..d998140db --- /dev/null +++ b/Templates/Modules/AI_Guard/Datablocks/aiPlayerDatablocks.cs @@ -0,0 +1,53 @@ +// aiPlayerDatablocks.cs +// breaks out the datablocks for aiguard.cs to make them easier to edit. +// also manages the trigger controller + +////////////////////////////////////// +// +// TRIGGER CONTROLLER +// This code handles the placing and behavior of aiSoldierTriggers +///////////////////////////////////////// + +datablock TriggerData(guardTrigger) +{ + tickPeriodMS = 100; +}; + +//////////////////////////////////////// +//This is the default datablock for the Guard. +//I changed the stock datablock name from those used in AIPLAYER.CS +//I did this to allow me to create different classes of bots with their own +//thinking and reaction routines for each class. +/////////////////////////////////// +// +//You can specifiy as many datablocks as you have characters. +//The first variable after PlayerData must be a unique name. The second variable (after the semicolon) +//must be a valid body type. + +datablock PlayerData(DemoPlayer : DefaultPlayerData) +{ + maxDamage = 100; + + maxForwardSpeed = 14; + maxBackwardSpeed = 13; + maxSideSpeed = 13; + + //The art used by this datablock + shapeFile = "data/Soldier/Shapes/soldier_Rigged.DAE";//"art/shapes/actors/Soldier/soldier_rigged.DAE"; + + //Set the bot's inventory so it can use different weapons + maxInv[Rifle] = 1; + maxInv[BulletAmmo] = 1000; + maxInv[RocketLauncher] = 1; + maxInv[RocketLauncherAmmo] = 1000; + maxInv[GrenadeLauncher] = 1; + maxInv[GrenadeLauncherAmmo] = 1000; + + maxInvRifle = "1"; + maxInvBulletAmmo = "1000"; + maxInvGrenadeLauncher = "1"; + maxInvGrenadeLauncherAmmo = "1000"; + maxInvRocketLauncher = "1"; + maxInvRocketLauncherAmmo = "1000"; +}; + diff --git a/Templates/Modules/AI_Guard/Datablocks/aiPlayerMarker.cs b/Templates/Modules/AI_Guard/Datablocks/aiPlayerMarker.cs new file mode 100644 index 000000000..71014097b --- /dev/null +++ b/Templates/Modules/AI_Guard/Datablocks/aiPlayerMarker.cs @@ -0,0 +1,16 @@ +//The AIPlayer marker is placed in the map during edit mode. When the map is loaded the +//marker is replaced by a guard player. (Assuming that the $AI_GUARD_ENABLED variable is set +//to true.) The marker is hidden or not depending on the value set in $AI_GUARD_MARKER_HIDE. +//The AIPlayer marker can use a dynamic variable - set during map creation - called 'respawn' +//Creating and setting the 'respawn' variable will override the default value set in +//$AI_GUARD_DEFAULTRESPAWN. This allows more freedom in determining which bots respawn and which do not. + +datablock StaticShapeData(AIPlayerMarker) +{ + // Mission editor category, this datablock will show up in the + // specified category under the "shapes" root category. + category = "AIMarker"; + + // Basic Item properties + shapeFile = "data/Soldier/Shapes/soldier_Rigged.DAE";//"art/shapes/actors/Soldier/soldier_rigged.DAE"; +}; \ No newline at end of file diff --git a/Templates/Modules/AI_Guard/Scripts/aiPlayer.cs b/Templates/Modules/AI_Guard/Scripts/aiPlayer.cs new file mode 100644 index 000000000..1a9adad3a --- /dev/null +++ b/Templates/Modules/AI_Guard/Scripts/aiPlayer.cs @@ -0,0 +1,1639 @@ +//The aiPlayer.cs file creates a guard-style bot that can also be pathed. +//The guard uses a simple state machine to control it's actions. + +//The bots actions are as follows: +//Dead: The bot stops all activity and is dead. +//Guarding: When guarding the bot scans for new targets, and when one is found it switches to 'Attacking' +//Attacking: The guard tries to close with the target while firing and checking for target updates. +//Holding: When the bot loses a target it will go into a holding pattern. While holding the bot's FOV +// is enhanced. The bot holds for a set number of cycles before changing it's action state to +// 'Returning' +//Returning: The bot tries to return to it's original position. While returning the guard looks for new targets +// and checks it motion relattive to it's last movement to determine if it is stuck. +// If it is stuck the bot tries to move is a random direction to try and clear the obstacle. +// (Not always a foolproof solution, but in a simple environment it works well enough.) +//Defending: When a bot takes damage it's status is set to defending. The bot sidesteps and then +// goes into a holding pattern. This does two things. It enhances the bots FOV and it scans for +// targets. Plus it will have the bot return to it's original position if there is no +// perceivable threat in range. +//NoTarget This is set when the bot loses sight or perception of it's targets. This is used to help +// clear the bots aim and other housekeeping functions + +//The following are global variables used to set the guards basic settings. +$AI_GUARD_ENABLED = true; //Whether Guard bots are loaded during mission loading. +$AI_GUARD_MARKER_HIDE = true; //Turns marker hiding on or off - useful when editing maps. +$AI_GUARD_WEAPON = "Lurker"; //Which weapon do you want the guard to use +$AI_GUARD_ENDLESS_AMMO = true; //When set to true the guard will replenish its ammo perpetually +$AI_GUARD_WEAPON_USES_AMMO = true; //Set this to false for energy weapons that do not use ammo +$AI_GUARD_SIDESTEP = 20; //This value helps determine how far a bot sidesteps when he is stuck. + //The computer picks a random number between 1 and $AI_GUARD_SIDESTEP + //The value is then subtracted by half it's value to create a left/right + //and forward/back component. So the effective range is really -10 to +10 + //with the default setting of 20 +$AI_GUARD_DETECT_ITEM_RANGE = 50; //Sets how far around itself a bot will look for items to pick up +$AI_GUARD_HOLDCNT_MAX = 10; //The number of think cycles that the bot will 'hold' for before trying to + //return to his post. +$AI_GUARD_FIREDELAY = 1000; //How long the bot waits between firing bursts. +$AI_GUARD_ENHANCED_FOV_TIME = 2000; //How long the bots field of vision is enhanced to 360 for. +$AI_GUARD_FOV = 200; //The guards field of vision +$AI_GUARD_ENHANCED_DEFENDING_TIME = 5000; //How long the bot gets a 360 FOV and a longer detect distance for after being sniped. +$AI_GUARD_ENHANCED_DEFENDING_DISTANCE = 100; //Detect distance after being sniped. +$AI_GUARD_DETECT_DISTANCE = 50; //The range at which a guardbot will start reacting to a client target +$AI_GUARD_IGNORE_DISTANCE = 40; //The range at which the bot ignores a client and will not fire on it. +$AI_GUARD_MAX_DISTANCE = 5; //The bot will stop and try to stay at this distance or less from the player. +$AI_GUARD_RANGED_MAX_DISTANCE = 15; //Bots flagged as ranged will stop and try to stay at this distance or less from the player. +$AI_GUARD_MAX_PACE = 12; //The maximum range the mobs pace away from their guard point. (works like AI_GUARD_SIDESTEP) +$AI_GUARD_MIN_PACE = 1.5; //The minimum range the mobs pace away from their guard point. +$AI_GUARD_PACE_SPEED = 0.5; //Set the speed of the mob while pacing (1.0 is 100%, 0.5 is 50%) +$AI_GUARD_PACE_TIME = 4; //Sets how many think cycles the bot has to travel to it's location (or stand at + //it's location if it's already there) before getting another one to move to, random between 1 and this number. +$AI_GUARD_LOS_TIME = 100; //The amount of time after the bot loses sight of player that it will get their position. + //This helps the bot turn sharp corners. Set it to 1 or 0 if you don't want the bot to cheat. +$AI_GUARD_LOS_BYPASS = 3; //The distance at which positions will not have line of sight tests done on them. + //This is needed because the bot can not see the area around its feet. +$AI_GUARD_CORNERING = 0.8; //How close the bot will attempt to take corners. If the bot is having problems with corners, + //adjust this value, $AI_GUARD_LOS_TIME and $AI_GUARD_LOS_BYPASS as needed (will vary based on run speed). +$AI_GUARD_SCANTIME = 500; //The quickest time between think cycles. +$AI_GUARD_MAX_ATTENTION = 10; //This number and $AI_GUARD_SCANTIME are multiplied to set the delay in the + //thinking loop. Used to free up processor time on bots out of the mix. +$AI_GUARD_CREATION_DELAY = 3000; //How long a bot waits after creation before his think cycles are controlled by + //his attention rate. (Used to help free up think cycles on bots while misison + //finishes loading. +$AI_GUARD_TRIGGER_DOWN = 100; //How long the bot holds down the trigger when firing. Use longer pulses for + //pray and spray type weapons. +$AI_GUARD_DEFAULTRESPAWN = true; //Controls whether guards respawn automatically or not if their marker does not have + //dynamic 'respawn' variable set in it. +$AI_GUARD_RESPAWN_DELAY = 18000; //Determines how long a bot goes in between death and respawning. +$AI_GUARD_ENHANCEFOV_CHANCE = 25; //There is a 1 in x chance that guard will see 360 deg vision to prevent it + //from being snuck up on. +$AI_GUARD_SEEK_HEALTH_LVL = 65; //This sets at what damage level a bot will attempt to look for a health pack nearby. +$AI_GUARD_CHAR_TYPE = DemoPlayer; //This is the default datablock that is spawned as the bot unless another is specified on the node + +//The onReachDestination function is responsible for setting the bots 'action' +//state to the appropriate setting depending on what action the bot was following +//to reach the destination. +function DemoPlayer::onReachDestination(%this, %obj) +{ + //Picks an appropriate set of actions based on the bots 'action' variable + switch$(%obj.action) + { + //If the bot is attacking when it reaches it's target it will go into a hold. + case "Attacking": + %obj.action="Holding"; + //If the bot is returning it has two possible scenarios for reaching a destination + //The first case is the the bot sidestepped and has reached it's sidestep location. + //If that is the case, then the bot goes into a quick hold. (Which sets the bot to + //only hold for 1 cycle before returning to his post.) + //The other alternative is that the bot has returned as is back at it's original position. + //If this is the case, then the bot's transform is set to match that of it's marker's + //transformation. + //This will cause a snapping into position - but it ensures that your guard always faces the + //direction you want it to when it returns to it's post. + //(It also helps to make sure that your markers are set as close to the ground as possible. + //Otherwise your bots will hop up and drop from the sky when they return to post.) + case "Returning": + //If the bot is pathed have it move to the next node on its path + if (%obj.path !$= "") + { + //Check if the bot's guarding + if (%obj.doesGuard $= "guard") + { + if (%obj.returningPos == %obj.marker.getposition()) + { + %obj.moveToNextNode(%this.returningPath); + } + else + { + %obj.path = ""; + %obj.doesGuard = ""; + } + } + else + %obj.moveToNextNode(%this.returningPath); + } + else + { + if (%obj.doesGuard $= "guard") + %basedist = vectorDist(%obj.getposition(), %obj.marker.getposition()); + else + %basedist = vectorDist(%obj.getposition(), %obj.returningPos); + //if the bot is close to his original position then set it's action to + //Guarding and set it to it's original facing and position. + if(%basedist < 1.0) + { + %obj.action = "Guarding"; + //Set the bots returning position to its marker if it's guarding + if (%obj.doesGuard $= "guard") + %obj.settransform(%obj.marker.gettransform()); + else + %obj.settransform(%obj.returningTrans); + %obj.clearaim(); + } + //if the bot is away from his post, then he must have gotten here + //as a result of sidestepping so set him to do a quick hold to scan + //for targets then return to post. + else + { + //Sets holdcnt to 1 less than the max. Ensures that the bot only holds for 1 cycle. + //before trying to return. + %obj.holdcnt=$AI_GUARD_HOLDCNT_MAX-1; + %obj.action="Holding"; + } + } + //The bot was defending and sidestepped. So set him to 'hold' to check for targets + //and to prepare to return to post if no targets are found. + case "Defending": + %obj.action = "Holding"; + + case "RetrievingItem": + %obj.holdcnt=$AI_GUARD_HOLDCNT_MAX-1; + %obj.action="Holding"; + } +} + +//The OnDamage function sets the bots action to 'Dead' and starts the respawn process +//if called for. +function DemoPlayer::OnDamage(%this, %obj, %delta) +{ + if (%obj.action !$="GetHealth") + { + if (%obj.action !$= "Attacking" && %obj.action !$= "Defending" && %obj.getstate() !$="Dead") + { + %obj.enhancedefending(%obj); + } + %obj.action = "Defending"; + } + + if(%obj.getstate() $="Dead") + %obj.action="Dead"; + + if(%obj.getState() $= "Dead" && %obj.respawn == true) + { + //%obj.delaybeforerespawn(%obj.botname, %obj.marker); + %this.player = 0; + } +} + +//The delay before respawn function is set to wait a specified duration before +//respawning an AIPlayer +function AIPlayer::DelayBeforeRespawn(%this, %name, %marker) +{ + %this.respawntrigger = %this.schedule($AI_GUARD_RESPAWN_DELAY,"spawn", %name, %marker); +} + +//The LoadEntities function replaces the markers placed in the map with the AI bots during the +//mission loading. +function AIPlayer::LoadEntities() +{ + //Check to see if the AIPlayers are to be loaded. + if ($AI_GUARD_ENABLED == true) + { + echo("Loading Guard entities..."); + //This performs a search for all items within the radius from the starting point. + //All of the items that match "AIPlayerMarker" trigger a bot to be placed at the + //position of the marker found. + %position = "0 0 0"; + %radius = 100000.0; + InitContainerRadiusSearch(%position, %radius, $TypeMasks::StaticObjectType); + %i=0; + while ((%targetObject = containerSearchNext()) != 0) + { + if(%targetobject.getclassname() $= "StaticShape") + { + if (%targetobject.getDataBlock().getName() $= "AIPlayerMarker") + { + %i++; + + // Let's check to see if the marker specifies a datablock. + // if so, we spawn that datablock model instead of the default + if (%targetObject.block $= "") + { + %block = $AI_GUARD_CHAR_TYPE; + } + else + { + %block = %targetObject.block; + } + %player = AIPlayer::spawnAtMarker("Guard" @ %i, %targetobject, %block); + } + } + } + } + else + { + echo("Guard entities disabled..."); + } + + //This determines whether to hide or not hide the markers during mission loading. + //It's helpful to have the markers visible when editing the map and fine tuning the bot + //placement. + //This search is identical to the one above, only it hides the markers if found. + if ($AI_GUARD_MARKER_HIDE == true) + { + echo("Hiding Guard markers..."); + %position = "0 0 0"; + %radius = 100000.0; + InitContainerRadiusSearch(%position, %radius, $TypeMasks::StaticObjectType); + while ((%targetObject = containerSearchNext()) != 0) + { + if(%targetobject.getclassname() $= "StaticShape") + { + if (%targetobject.getDataBlock().getName() $= "AIPlayerMarker") + %targetobject.setAllMeshesHidden(true); + } + } + } +} + +function AIPlayer::spawnByGroup(%spawnGroup) +{ + echo ("spawning group " @ %spawnGroup); + + //echo("Loading soldiers!"); + + //This performs a search for all items within the radius from the starting point. + //All of the items that match "AIPlayerMarker" trigger a bot to be placed at the + //position of the marker found. + + %position = "0 0 0"; + %radius = 100000.0; + InitContainerRadiusSearch(%position, %radius, $TypeMasks::StaticObjectType); + %i=0; + while ((%targetObject = containerSearchNext()) != 0) + { + if(%targetobject.getclassname() $= "StaticShape") + { + if (%targetobject.getDataBlock().getName() $= "AIPlayerMarker") + { + %i++; + echo("target's spawn is " @ %targetObject.spawnGroup); + if (%targetObject.spawnGroup $= %spawnGroup) + { + // we're in the correct spawn group! + + // Let's check to see if the marker specifies a datablock. + // if so, we spawn that datablock model instead of the default + if (%targetObject.block $= "") + { + %block = $AI_GUARD_CHAR_TYPE; + } + else + { + %block = %targetObject.block; + } + + // let's spawn some bad guys! + %player = AIPlayer::spawnAtMarker("Guard" @ %i, %targetobject, %block); + } + } + } + } + //This determines whether to hide or not hide the markers during mission loading. + //It's helpful to have the markers visible when editing the map and fine tuning the bot + //placement. + //This search is identical to the one above, only it hides the markers if found. + if ($AI_GUARD_MARKER_HIDE == true) + { + echo("Hiding Guard markers..."); + %position = "0 0 0"; + %radius = 100000.0; + InitContainerRadiusSearch(%position, %radius, $TypeMasks::StaticObjectType); + while ((%targetObject = containerSearchNext()) != 0) + { + if(%targetobject.getclassname() $= "StaticShape") + { + if (%targetobject.getDataBlock().getName() $= "AIPlayerMarker") + { + if (%targetObject.spawnGroup $= %spawnGroup) + %targetobject.setAllMeshesHidden(true); + } + } + } + } +} + +//This function sets the bots aim to the current target, and 'pulls' the trigger +//of the weapon of the bot to begin the firing sequence. +function AIPlayer::openfire(%this, %obj, %tgt) +{ + //If the bot is dead or the target is dead then let's bail out of here. + if (%obj.getState() $= "Dead" || %tgt.player.getstate() $="Dead") + { + %obj.firing = false; + %obj.NoTarget(); + } + else + { + //We've got two live ones. So let's kill something. + //The firing variable is set while firing and is cleared at the end of the delay cycle. + //This is done to allow the use of a firing delay - and prevent a bot from firing again + //prematurely. + if(!%obj.firing) + { + //Gets the range to target - rtt + %rtt=vectorDist(%obj.getposition(), %tgt.player.getposition()); + + //If the target is within our ignore distance then we will attack. + if(%rtt < $AI_GUARD_IGNORE_DISTANCE) + { + if(%obj.fireLater <= 0 && %obj.getAimLocation() != %tgt.player.getposition()) //Fix for premature firing + { + %obj.fireLater++; + return; + } + //Sets the firing variable to true + %obj.firing = true; + + if($AI_GUARD_WEAPON_USES_AMMO) + { + if($AI_GUARD_ENDLESS_AMMO == true) + { + %obj.incinventory(%obj.botWeapon @"Ammo",100); + } + } + + //'Pulls' the trigger on the bot gun. + %obj.setImageTrigger(0,true); + //This sets a delay of $AI_GUARD_TRIGGER_DOWN length to hold the trigger down for. + %this.trigger = %this.schedule($AI_GUARD_TRIGGER_DOWN,"ceasefire", %obj); + } + else + { + //There was a target when openfire was called, but now they're out of range so + //we have no target. Call NoTarget to clear the bots aim. + %obj.NoTarget(%obj); + } + } + } +} + +//This simply clears the bots aim to have it look forward relative to it's movement. +function AIPlayer::NoTarget(%this, %obj) +{ + %obj.clearaim(); +} + +//Ceasefire is called by the openfire function after the set delay to +//hold the trigger down is met. +function AIPlayer::ceasefire(%this, %obj) +{ + //Turns off the trigger, or lets off of it. + %obj.setImageTrigger(0,false); + //This sets the delay between when we let off the trigger and how soon it will + //be before we allow the bot to fire again. + %this.ceasefiretrigger = %this.schedule($AI_GUARD_FIREDELAY,"delayfire", %obj); +} + +//delayfire is called to clear the firing variable. Clearing this allows +//the bot to fire again in the openfire function. +function AIPlayer::delayfire(%this, %obj) +{ + //this is the end of the firing cycle + %obj.firing = false; +} + + +//----------------------------------------------------------------------------- +// AIPlayer static functions +//----------------------------------------------------------------------------- + +//This is the spawn function for the bot. +function AIPlayer::spawn(%this, %name, %obj, %block) +{ + if (%obj.block $= "") + { + %block = $AI_GUARD_CHAR_TYPE; + } + else + { + %block = %obj.block; + } + + // Create the demo player object + %player = new AIPlayer() { + dataBlock = %block; + + //The marker is the AIPlayer marker object that the guard is associated with. + //The marker object is kept with the player data because it's location, and + //dynamic variable values are used in several functions. This also allows the addition + //of future dynamic variables without having to change the spawn/respawn functions to + //access them. + marker = %obj; + botname = %name; + //Sets the bot's field of vision + fov = $AI_GUARD_FOV; + //Sets the bot's detect distance + detdis = $AI_GUARD_DETECT_DISTANCE; + //Sets the bot's returning position and transform + returningPos = %obj.getposition(); + returningTrans = %obj.gettransform(); + //Sets the bot not to return to a path as soon as it is loaded + //The pathed bots will go to there paths at another point + returningPath = 0; + //Fix for premature firing + fireLater = 0; + //Sets the bot's pacing + pace = $AI_GUARD_PACE_TIME; + //The pathname variable is a dynamic variable set during map editing. + //This allows the designer to attach each bot to a seperate path + path = %obj.pathname; + //Is the bot using a ranged weapon + weapRange = %obj.range; + //Does the bot return to its spawn point + doesGuard = %obj.doesReturn; + //Sets whether the bot is AI or not + isbot=true; + //Thinking variables + //Firing tells whether or not we're in the midst of a firing sequence. + firing = false; + //The 'action' variable holds the state of the bot - which controls how it + //thinks. + holdcnt = $AI_GUARD_HOLDCNT_MAX-1; + action = "Holding"; + //The bots starting attention level is set to half of it's range. + attentionlevel = $AI_GUARD_MAX_ATTENTION/2; + + //Oldpos holds the position of the bot at the end of it's last 'think' cycle + //This is used to help determine if a bot is stuck or not. + oldpos = %obj.getposition(); + //Added for bots use different weapons + botWeapon = $AI_GUARD_WEAPON; + }; + + MissionCleanup.add(%player); + + // if the field is not blank, set the weapon variable to the weapon + // otherwise, use default. + if (%obj.Weapon !$= "") + { + %player.botWeapon = %obj.Weapon; + } + + //Sets the name displayed in the hud above the bot. Commented out be default. + //%player.setShapeName(%name); + //is called to set the bots beginning inventory. + %player.EquipBot(%player); + //Sets the bot's initial position to that of it's marker. + %player.setTransform(%obj.gettransform()); + + //The following cluster of if-thens sets whether the bot will respawn or not + //based on it's markers dynamic variable - or the default respawn variable setting. + if (%obj.respawn $= "" ) + { + %player.respawn=$AI_GUARD_DEFAULTRESPAWN; + } + else + { + if (%obj.respawn == true) + %player.respawn=true; + else + %player.respawn=false; + } + + if (%obj.pathname !$= "") + { + %player.schedule($AI_GUARD_CREATION_DELAY,"followPath", %obj.pathname, -1); + } + + //Sets the bot to begin thinking after waiting the length of $AI_GUARD_CREATION_DELAY + %player.schedule($AI_GUARD_CREATION_DELAY,"Think", %player); + + return %player; +} + +//This sets the bots beginning equipment and inventory +function AIPlayer::EquipBot(%this, %obj) +{ + echo("equipingBot"); + //This adds a weapon to the bots inventory. + %obj.incinventory(%obj.botWeapon,1); + //This mounts the weapon on the bot. + %obj.mountImage(%obj.botWeapon @ "Image",0); + echo(%obj.botWeapon); + %obj.use(%obj.botWeapon); + if($AI_GUARD_WEAPON_USES_AMMO == true) + { + //This sets the bots beginning inventory of ammo. + %obj.setInventory(%obj.botWeapon @ "Ammo",100); + } +} + +//The EnhanceFOV function temporarily gives the bot a 360 degree field of vision +//This is used to emulate the bot looking around at different times. Namely when +//'Holding'. +function AIPlayer::EnhanceFOV(%this, %obj) +{ + //Is the botFOV already 360 degrees? If not then we'll set it, and set the schedule to + //turn it back off. + if (%obj.fov != 360) + { + //Sets the field of vision to 360 deg. + %obj.fov = 360; + //Starts the timer to disable the enhanced FOV + %this.fovtrigger = %this.schedule($AI_GUARD_ENHANCED_FOV_TIME, "restorefov", %obj); +} +} + +//Restore FOV sets the bot's FOV back to it's regular default setting. +function AIPlayer::restoreFOV(%this, %obj) +{ + %obj.fov = $AI_GUARD_FOV; +} + +//Enhances the defending mob's FOV and detect distance after being hit. +function AIPlayer::EnhanceDefending(%this, %obj) +{ + if (%obj.detdis == $AI_GUARD_DETECT_DISTANCE) + { + %obj.detdis = $AI_GUARD_ENHANCED_DEFENDING_DISTANCE; + %this.distancetrigger = %this.schedule($AI_GUARD_ENHANCED_DEFENDING_TIME, "restoreDefending", %obj); + } + + %obj.fov = 360; + %this.fovtrigger = %this.schedule($AI_GUARD_ENHANCED_DEFENDING_TIME, "restorefov", %obj); +} + +//Restores the defending mob's detect distance. +function AIPlayer::restoreDefending(%this, %obj) +{ + %obj.detdis = $AI_GUARD_DETECT_DISTANCE; +} + +//Spawn at marker is called by LoadEntities, and calls the spawn function to +//create the bots and place them at their starting positions. +function AIPlayer::spawnAtMarker(%name, %obj, %block) +{ + if (!isObject(%obj)) + return; + %player = AIPlayer::spawn(%this, %name, %obj, %block); + return %player; +} + +//AITargeting + +//Return the angle of a vector in relation to world origin +function AIPlayer::getAngleofVector(%this, %vec) +{ + %vector = VectorNormalize(%vec); + %vecx = getWord(%vector,0); + %vecy = getWord(%vector,1); + if(%vecx >= 0 && %vecy >= 0) + %quad = 1; + else + if(%vecx >= 0 && %vecy < 0) + %quad = 2; + else + if(%vecx < 0 && %vecy < 0) + %quad = 3; + else + %quad = 4; + %angle = mATan(%vecy/%vecx, -1); + %degangle = mRadToDeg(%angle); + switch(%quad) + { + case 1: + %angle = %degangle-90; + case 2: + %angle = %degangle+270; + case 3: + %angle = %degangle+90; + case 4: + %angle = %degangle+450; + } + if (%angle < 0) %angle = %angle + 360; + return %angle; +} + +//This is another function taken from code off of garagegames. +//The only mods I made to it was to add the extra check to ensure that the +//angle is within the 0-360 range. +function AIPlayer::check2DAngletoItem(%this, %obj, %item) +{ + %eyeVec = VectorNormalize(%this.getEyeVector()); + %eyeangle = %this.getAngleofVector(%eyeVec); + %posVec = VectorSub(%item.getPosition(), %obj.getPosition()); + %posangle = %this.getAngleofVector(%posVec); + %angle = %posangle - %eyeAngle; + %angle = %angle ? %angle : %angle * -1; + if (%angle < 0) %angle = %angle + 360; + return %angle; +} + +//This is another function taken from code off of garagegames. +//The only mods I made to it was to add the extra check to ensure that the +//angle is within the 0-360 range. +function AIPlayer::check2DAngletoTarget(%this, %obj, %tgt) +{ + %eyeVec = VectorNormalize(%this.getEyeVector()); + %eyeangle = %this.getAngleofVector(%eyeVec); + %posVec = VectorSub(%tgt.player.getPosition(), %obj.getPosition()); + %posangle = %this.getAngleofVector(%posVec); + %angle = %posangle - %eyeAngle; + %angle = %angle ? %angle : %angle * -1; + if (%angle < 0) %angle = %angle + 360; + return %angle; +} + +//The 'Think' function is the brains of the bot. +//The bot performs certain actions based on what it's current 'action' state is. +//The bot thinks on a scheduled basis. How fast the bot 'thinks' is determined by +//the bots attention level and its default scan time. (There are a few cases in the think +//function below where the schedule is shortened - but only to make the 'thinking' more +//realistic and to cut down on duplicating chunks of code. + +function AIPlayer::Think(%this, %obj) +{ + //This cancels the current schedule - just to make sure that things are kept neat and tidy. + cancel(%this.ailoop); + + //If the bot is dead, then there's no need to think or do anything. So let's bail out. + if (!%obj || %obj.getstate() $="Dead") + return; + + %prevaction=%obj.action; + + if (%obj.action !$="RetrievingItem" && %obj.action !$="Dead") + { + if (%obj.getdamagelevel() > $AI_GUARD_SEEK_HEALTH_LVL) + { + %this.enhancefov(%obj); + %hlth= %this.getclosestiteminsightandrange(%obj, "HealthPatch"); + + if(%hlth > 0) + { + %obj.action="GetHealth"; + } + + if($AI_GUARD_WEAPON_USES_AMMO == true) + { + if(%obj.getInventory(%obj.botWeapon @ "Ammo") == 0) + { + %this.enhancefov(%obj); + %ammostr = %obj.botWeapon @ "Ammo"; + %i_ammo= %this.getclosestiteminsightandrange(%obj, %ammostr ); + if(%i_ammo > 0) + { + %obj.action="GetAmmo"; + } + } + } + } + + //The switch$ takes the value of the bots action variable and then chooses what code to run + //according to what value it is. + switch$(%obj.action) + { + //The bot is 'dead' so lets clear his aim, and turn off his firing variable. + case "Dead": + %obj.clearaim(); + %obj.firing = false; + + //This is the bots default position. While guarding the bot will only do 2 things. + //The first is that the bot will run a random check to see if it can enhance it's fov. + //This is thrown in to prevent bots from having a perpetual blind spot, but still limits + //their field of vision for the majority of the time. + //The other thing the bot does is to check for nearby targets. If found the bot goes into attack mode. + case "Guarding": + //The bot will enhance it's FOV if it picks a 1 from a range of 1 to $AI_GUARD_ENHANCEFOV_CHANCE + %chance = getRandom(($AI_GUARD_ENHANCEFOV_CHANCE-1)) +1; + if (%chance == 1 ) + %this.enhancefov(%obj); + + %obj.fireLater = 0; + %obj.lostest = 0; + + //The bot checks for the nearest valid target if any. + %tgtid = %this.GetClosestHumanInSightandRange(%obj); + //If %tgtid >= 0 then a target is in sight and range. + if(%tgtid >= 0) + { + //Set the bots action to 'Attacking' and set it to attack quickly. + %obj.action = "Attacking"; + //This is one instance where the bots thinking is sped up to enable the bot + //to react more quickly as seems appropriate. + %this.ailoop=%this.schedule(100,"Think" , %obj); + } + else + { + //Check if the bot's pathed and if not, pace if it's time to pace + if (%obj.path $= "") + { + if(%obj.pace == 0) + { + %obj.pace = getRandom(($AI_GUARD_PACE_TIME-1)) +1; + %this.pacing(%obj); + } + else + { + %obj.pace--; + } + } + //There are no targets so continue guarding and call the scheduler to have the bot think + //at it's regular interval + %this.ailoop=%this.schedule($AI_GUARD_SCANTIME * %obj.attentionlevel ,"Think" , %obj); + } + + //The bot has been told that there is a target in sight and range and is set to attack it. + //While attacking the bot's attention level is kept at it's lowest value (Quickest thinking) + //The bot looks for the nearest target in sight. If the target is found the bot will aim at the + //target, set it's move destination to the position of the target, and then openfire on the target. + case "Attacking": + //Set the bot's move speed back to normal + %obj.setMoveSpeed(1.0); + //Maintain a low attention value to keep the bot thinking quickly while attacking. + %obj.attentionlevel=1; + //Get the id of the nearest valid target + %tgtid = %this.GetClosestHumanInSightandRange(%obj); + //If %tgtid>0 then there is a valid target + if(%tgtid >=0) + { + //Make sure that we keep ourself in attack mode since we have a target in sight. + %obj.action = "Attacking"; + //Get the current player object from the client value set in %tgtid + %tgt = ClientGroup.getobject(%tgtid); + //Set the bot to aim at the target. + //(The code uses the VectorAdd to adjust the aim of the bot to correct for the + //bot trying to shoot at the targets feet.) + %obj.setAimObject(%tgt.player, "0 0 1"); + + %dest = %tgt.player.getposition(); + + %basedist = vectorDist(%obj.getposition(), %dest); + + //Check if the bot is flagged as using a ranged weapon, then check if the bot is already close + //enough to the target or needs to be closer + if (%obj.weapRange $= "ranged") + { + if(%basedist > $AI_GUARD_RANGED_MAX_DISTANCE) + { + %this.moveDestinationA = %dest; + %this.dontMoveAlongTheWall(%obj); + } + } + //Check if the bot is already close enough to the target or needs to be closer + else + { + if(%basedist > $AI_GUARD_MAX_DISTANCE) + { + %this.moveDestinationA = %dest; + %this.dontMoveAlongTheWall(%obj); + } + } + //Tells the bot to start shooting the target. + %obj.openfire(%obj, %tgt); + //Tells the scheduler to have us think again + %this.ailoop=%this.schedule($AI_GUARD_SCANTIME * %obj.attentionlevel ,"Think" , %obj); + } + else + { + //There was no target found, so set our action to NoTarget. + %obj.action="NoTarget"; + //Again this sets the scheduler to have us think quickly to have the bot + //react to the loss of it's attack target + %this.ailoop=%this.schedule(100 ,"Think" , %obj); + } + + //When a bot loses it's target, or when the bot reaches it's destination as the result of + //a sidestep the bot will go into a 'hold' + //During a hold the bot will have enhanced FOV (to emulate scanning around for targets.) + //The bot will look for targets in range and attack if found. + //If no target is found the bot will increase it's holdcnt by 1. When the bot reaches it's + //maximum holdcnt value it will attempt to return to it's base position. + case "Holding": + //Set the bot's move speed back to normal + %obj.setMoveSpeed(1.0); + //Enhance the bot's FOV + %this.enhancefov(%obj); + //Checks for targets - (See the above code for full details of this section of code) + %tgtid = %this.GetClosestHumanInSightandRange(%obj); + if(%tgtid >=0) + { + %obj.holdcnt=0; + %obj.action = "Attacking"; + %this.ailoop=%this.schedule(100,"Think" , %obj); + } + else + { + //There was no target found, so we need to have the bot continue to 'hold' + //for a little bit before doing anything else. + + //Increase the holdcnt variable by one + %obj.holdcnt++; + %obj.fireLater = 0; + + %basedist = vectorDist(%this.getposition(), %this.moveDestinationA); + if (%basedist > 0.5) + %this.dontMoveAlongTheWall(%obj); + + //Check to see if we've passed our threshold of waiting + if (%obj.holdcnt > $AI_GUARD_HOLDCNT_MAX) + { + //Set holdcnt back to 0 for the next time we need it. + %obj.holdcnt=0; + + //Set the bot to return to where it last saw the player if it's not pathed + if (%obj.path $= "") + { + //Reset returning positions for guard bots + if (%obj.doesGuard $= "guard") + { + %obj.returningPos = %obj.marker.getposition(); + %obj.returningTrans = %obj.marker.gettransform(); + } + + %this.moveDestinationA = %obj.returningPos; + %this.dontMoveAlongTheWall(%obj); + } + //Set the bot to return to its path since it is pathed + else + { + if (%obj.returningPath != 0) + { + if (%obj.doesGuard $= "guard") + { + %this.moveDestinationA = %obj.returningPos; + %this.dontMoveAlongTheWall(%obj); + } + else + { + %this.movtrigg = %this.schedule(100, "followPath", %obj.path, -1); + } + } + else + { + %obj.returningPath = 1; + } + } + + //Set the bot action to 'Returning' + %obj.action="Returning"; + //Sets the bots oldpos to that of the position it's returning to + //This is done this way due to the fact that we've been holding + //and our position hasn't been changing. So we want to be sure that + //our bot doesn't think that it's stuck as soon as it tries to return. + %obj.oldpos = %obj.returningPos; + //We've waited long enough, so let's quickthink and go into 'Return' mode + %this.ailoop=%this.schedule(100, "Think" , %obj); + } + else + { + //Start the bot moving to its return point while it's still in holding mode + %this.moveDestinationA = %obj.returningPos; + %this.dontMoveAlongTheWall(%obj); + + %obj.clearaim(); + %this.ailoop=%this.schedule($AI_GUARD_SCANTIME * %obj.attentionlevel ,"Think" , %obj); + } + } + + //In Return mode the bot will do the following. + //It looks for the nearest target in sight and will attack it. + //It does not check for people sneaking up behind it, nor does it enhance it's FOV. + //If a target is found the bot will attack. + //If no target is found, the bot is still in the process of returning so we check to see + //if the bot is stuck. Stuck in the case means that the bot hase moved a distance of less than + //1 unit since the last time it thought. + //If the bot is stuck, sidestep is called to have the bot try to move a different direction + //The bot is then set to go into 'Holding' but with it's holdcnt set to 1 less than it's maximum. + //This essentially means that the bot will sidestep, and go into hold for one cycle in which to check + //targets and then try to return again if there is nothing to attack. + //If the bot is not stuck and there are no targets, then the bots aim is set to point towards it's + //destination of it's spawn point. (This is done to prevent the bot from pointing to the position + //of it's last sidestep while returning.) + case "Returning": + //Set the bot's move speed back to normal + %obj.setMoveSpeed(1.0); + //The next line can be commented out if desired. I chose to put it in so that the + //bots would try to return in a timely manner rather than having them wait too long + //between thinks to see if they were stuck. + %obj.attentionlevel=$AI_GUARD_MAX_ATTENTION/2; + + //The next few lines again have the bot check for a target and attack if need be. + %tgtid = %this.GetClosestHumanInSightandRange(%obj); + if(%tgtid >=0) + { + %obj.action = "Attacking"; + %this.ailoop=%this.schedule(100,"Think" , %obj); + } + else + { + //There was no target so we're still returning. So now check for a pathed or stuck bot + //This gets a value depicting the distance from the bots last known move point + %movedist=vectorDist(%obj.getposition(), %obj.oldpos); + //If the bot hasn't moved more than 1 unit we're probably stuck. + //Remember - this is only checked for while returning - not guarding + if (%movedist <1.0) + { + //Set our holdcnt to 1 less than the maximum so we only hold for 1 cycle + %obj.holdcnt=$AI_GUARD_HOLDCNT_MAX-1; + //Call sidestep to pick a new move destination near the bot + %this.sidestep(%obj); + } + else + { + //Check to make sure the bot is not pathed + if (%obj.path $= "") + { + //We're returning and we're not stuck. So make sure we're looking the direction we're running. + //Check if the bot is guarding + if (%obj.doesGuard $= "guard") + { + %obj.setAimLocation(%obj.marker.getposition()); + } + else + { + %obj.setAimLocation(%obj.returningPos); + } + } + } + } + //Set our oldpos to match our current position so that next time we cycle through + //we'll know if we're going anywhere or not + %obj.oldpos = %obj.getposition(); + //Scedhule ourselves to think at our regular interval + %this.ailoop = %this.schedule($AI_GUARD_SCANTIME * %obj.attentionlevel, "Think", %obj); + + //When a bot takes damage his state is set to defending. + //A bot that is defending will have it's attention set to it's lowest level + //It will sidestep to try to avoid the danger, and to throw some randomness into it's + //movement. The bot will then go into a quick hold of 1 count. + case "Defending": + //Set the bot's move speed back to normal + %obj.setMoveSpeed(1.0); + //Set the hldcnt to 1 less than the max + %obj.holdcnt=$AI_GUARD_HOLDCNT_MAX-1; + //Set the bot to it's highest awareness + %obj.attentionlevel=1; + //Sidestep to a random position + %this.sidestep(%obj); + //Set our action to 'Holding' + %obj.action="Holding"; + //Set a quick think schedule to start us looking for targets quickly. + %this.ailoop=%this.schedule(100 ,"Think" , %obj); + + //NoTarget is set when a bot loses it's target while attacking. + //It causes a bot's firing variable to be reset, sets the holdcnt to 0 + //so that when we go into a hold we will do so for the full duration + case "NoTarget": + //Clear the firing variable + %obj.firing = false; + //Clear holdcnt + %obj.holdcnt=0; + //Set our action to 'Holding' + %obj.action = "Holding"; + //Quick think to start us looking for our lost target. + %this.ailoop=%this.schedule(100 ,"Think" , %obj); + + case "GetHealth": + %hlth= %this.getclosestiteminsightandrange(%obj, "HealthPatch"); + if(%hlth > 0) + { + %obj.action="RetrievingItem"; + %dest=%hlth.getposition(); + %obj.setmovedestination(%dest); + %this.enhancefov(%obj); + } + else + { + %obj.action=%prevaction; + } + %this.ailoop=%this.schedule(100 ,"Think" , %obj); + + case "GetAmmo": + %ammostr = %obj.botWeapon @"Ammo"; + %i_ammo= %this.getclosestiteminsightandrange(%obj, %ammostr ); + if(%i_ammo > 0) + { + %obj.action="RetrievingItem"; + %dest=%i_ammo.getposition(); + %obj.setmovedestination(%dest); + %this.enhancefov(%obj); + } + else + { + %obj.action=%prevaction; + } + + %this.ailoop=%this.schedule(100 ,"Think" , %obj); + + case "RetrievingItem": + %obj.setMoveSpeed(1.0); + %obj.attentionlevel=$AI_GUARD_MAX_ATTENTION/2; + %tgtid = %this.GetClosestHumanInSightandRange(%obj); + if(%tgtid >=0) + { + %obj.action = "RetrievingItem"; + %obj.attentionlevel=1; + %tgtid = %this.GetClosestHumanInSightandRange(%obj); + if(%tgtid >=0) + { + %tgt = ClientGroup.getobject(%tgtid); + %obj.setAimObject(%tgt.player, "0 0 1"); + %obj.openfire(%obj, %tgt); + } + else + { + %obj.firing = false; + } + } + else + { + %movedist=vectorDist(%obj.getposition(), %obj.oldpos); + if (%movedist <1.0) + { + %obj.holdcnt=$AI_GUARD_HOLDCNT_MAX-1; + + %this.sidestep(%obj); + } + else + { + %obj.setaimlocation(%obj.getmovedestination()); + } + } + %obj.oldpos=%obj.getposition(); + %this.ailoop=%this.schedule($AI_GUARD_SCANTIME * %obj.attentionlevel ,"Think" , %obj); + + default: + %obj.action="Holding"; + %this.ailoop=%this.schedule(100 ,"Think" , %obj); + } + } + //If you want to see the bots thinking processes in action then uncomment the + //line below. It will then set the hud above the bot to show it's current + //action/attention level/damage/ammo + //(Used during testing, but kind of fun to watch when you have + //several bots on the map at a time to see how things are working out.) + + //%objname= %obj.action @ ":"@ %this.attentionlevel @ ":" @ %obj.getdamagelevel() @ ":" @ %obj.getInventory(%obj.botWeapon @ "Ammo") ; + //%obj.setshapename(%objname); + + //Clear aim if attention hits max. + if (%this.attentionlevel == $AI_GUARD_MAX_ATTENTION) + %obj.clearaim(); +} + +//Causes AIPlayer to slowly pace around their current location +function AIPlayer::Pacing(%this, %obj) +{ + //%xrand and %yrand are set to be a random number that is equal to -1/2$AI_GUARD_MAX_PACE and +1/2$AI_GUARD_MAX_PACE + %xrand = getRandom(1,$AI_GUARD_MAX_PACE)-$AI_GUARD_MAX_PACE/2; + %yrand = getRandom(1,$AI_GUARD_MAX_PACE)-$AI_GUARD_MAX_PACE/2; + + while(%xrand > -$AI_GUARD_MIN_PACE && %xrand < $AI_GUARD_MIN_PACE) + { + %xrand = getRandom(1,$AI_GUARD_MAX_PACE)-$AI_GUARD_MAX_PACE/2; + } + while(%yrand > -$AI_GUARD_MIN_PACE && %yrand < $AI_GUARD_MIN_PACE) + { + %yrand = getRandom(1,$AI_GUARD_MAX_PACE)-$AI_GUARD_MAX_PACE/2; + } + + //%newloc is first set to the bots current position + %newLoc = %obj.getTransform(); + + //Set the bots returning position to its marker if it's guarding + if (%obj.doesGuard $= "guard") + %obj.returningPos = %obj.marker.getposition(); + + //If the is away from its returning position, go back to it so it doesn't wander too far away + %basedist = vectorDist(%obj.getposition(), %obj.returningPos); + if(%basedist > $AI_GUARD_MIN_PACE) + { + %newLoc = %obj.returningTrans; + } + else + { + //Word(0) of %newloc (which is the x value) is set to equal it's original value plus the value + //of %xrand. The -/+ aspect of this equivalates to a left/right direction. + %newLoc = setWord(%newLoc, 0, (getWord(%newLoc, 0) + (%xrand))); + //Word(1) of %newloc (which is the y value) is set to equal it's original value plus the value + //of %yrand. The -/+ aspect of this equivalates to a forward/back direction. + %newLoc = setWord(%newLoc, 1, (getWord(%newLoc, 1) + (%yrand))); + + %basedist = vectorDist(%obj.getposition(), %newLoc); + //If the target location is very close, don't preform a line of sight test + if(%basedist > $AI_GUARD_LOS_BYPASS) + { + //Line of sight test for the position the bot wants to pace to + %eyeTrans = %obj.getEyeTransform(); + %eyeEnd = %newLoc; + %searchResult = containerRayCast(%eyeTrans, %eyeEnd, $TypeMasks::PlayerObjectType | $TypeMasks::StaticTSObjectType | + $TypeMasks::TerrainObjectType | $TypeMasks::ItemObjectType | $TypeMasks::InteriorObjectType | $TypeMasks::StaticObjectType, %obj); + %foundObject = getword(%searchResult,0); + + if (%foundObject > 0) + { + %this.pacing(%obj); + return; + } + } + } + //Set the bot to move at a different speed than normal while pacing + %obj.setMoveSpeed($AI_GUARD_PACE_SPEED); + //Set the bot to look in the direction that it is moving. + %obj.setaimlocation(%newLoc); + //Set the bot to move towards the new position. + %obj.setMoveDestination(%newLoc); +} + +//Sidestep is used to find a random spot near the bot and attempt to have them move towards it. +function AIPlayer::SideStep(%this, %obj) +{ + //%xrand and %yrand are set to be a random number that is equal to -1/2$AI_GUARD_SIDESTEP and +1/2$AI_GUARD_SIDESTEP + %xrand = getRandom(1,$AI_GUARD_SIDESTEP)-$AI_GUARD_SIDESTEP/2; + %yrand = getRandom(1,$AI_GUARD_SIDESTEP)-$AI_GUARD_SIDESTEP/2; + //%newloc is first set to the bots current position + %newLoc = %obj.getTransform(); + //Word(0) of %newloc (which is the x value) is set to equal it's original value plus the value + //of %xrand. The -/+ aspect of this equivalates to a left/right direction. + %newLoc = setWord(%newLoc, 0, (getWord(%newLoc, 0) + (%xrand))); + //Word(1) of %newloc (which is the y value) is set to equal it's original value plus the value + //of %yrand. The -/+ aspect of this equivalates to a forward/back direction. + %newLoc = setWord(%newLoc, 1, (getWord(%newLoc, 1) + (%yrand))); + + //If the bot is pathed, get ready to move to the correct node + if (%obj.path !$= "") + { + if (%this.returningPath == 1) + { + %this.returningPath = 2; + } + } + + //If there's a target, keep aiming at it while sidestepping + %tgtid = %this.GetClosestHumanInSightandRange(%obj); + if(%tgtid >= 0) + { + %tgt = ClientGroup.getobject(%tgtid); + %obj.setAimObject(%tgt.player, "0 0 1"); + + %basedist = vectorDist(%obj.getposition(), %newLoc); + //If the target location is very close and we have a target player, don't preform a line of sight test + if(%basedist > $AI_GUARD_LOS_BYPASS) + { + //Line of sight test for the position the bot wants to sidestep to + %eyeTrans = %obj.getEyeTransform(); + %eyeEnd = %newLoc; + %searchResult = containerRayCast(%eyeTrans, %eyeEnd, $TypeMasks::PlayerObjectType | $TypeMasks::StaticTSObjectType | + $TypeMasks::TerrainObjectType | $TypeMasks::ItemObjectType | $TypeMasks::InteriorObjectType | $TypeMasks::StaticObjectType, %obj); + %foundObject = getword(%searchResult,0); + + if (%foundObject > 0) + { + %this.sidestep(%obj); + return; + } + } + } + //There is no target + else + { + //Line of sight test for the position the bot wants to sidstep to + %eyeTrans = %obj.getEyeTransform(); + %eyeEnd = %newLoc; + %searchResult = containerRayCast(%eyeTrans, %eyeEnd, $TypeMasks::PlayerObjectType | $TypeMasks::StaticTSObjectType | + $TypeMasks::TerrainObjectType | $TypeMasks::ItemObjectType | $TypeMasks::InteriorObjectType | $TypeMasks::StaticObjectType, %obj); + %foundObject = getword(%searchResult,0); + + if (%foundObject > 0) + { + %this.sidestep(%obj); + return; + } + //Set the bot to look in the direction that it is moving. + else + { + %obj.setaimlocation(%newloc); + } + } + //Set the bot to move towards the new position. + %obj.setMoveDestination(%newLoc); +} + +function AIPlayer::CheckLOStoItem(%this, %obj, %item) +{ + %basedist = vectorDist(%obj.getposition(), %item.getposition()); + //If the target item is very close, don't preform a line of sight test + if(%basedist > $AI_GUARD_LOS_BYPASS) + { + %eyeTrans = %obj.getEyeTransform(); + //%eyeEnd = %item.getposition(); + %eyeEnd = %item.getWorldBoxCenter(); + %searchResult = containerRayCast(%eyeTrans, %eyeEnd, $TypeMasks::TerrainObjectType | + $TypeMasks::InteriorObjectType | $TypeMasks::ItemObjectType | $TypeMasks::PlayerObjectType | + $TypeMasks::StaticTSObjectType | $TypeMasks::StaticObjectType , %obj); + %foundObject = getword(%searchResult,0); + + if(%foundObject == %item) + { + return true; + } + else + { + return false; + } + } + else + { + return true; + } +} + +//This is another function taken from code found on garagegames. +//It checks to see if there are any static objects blocking the view +//from the AIPlayer to the target. +function AIPlayer::CheckLOS(%this, %obj, %tgt) +{ + %eyeTrans = %obj.getEyeTransform(); + %eyeEnd = %tgt.player.getEyeTransform(); + %searchResult = containerRayCast(%eyeTrans, %eyeEnd, $TypeMasks::PlayerObjectType | $TypeMasks::StaticTSObjectType | + $TypeMasks::TerrainObjectType | $TypeMasks::ItemObjectType | $TypeMasks::InteriorObjectType | $TypeMasks::StaticObjectType, %obj); + %foundObject = getword(%searchResult,0); + + if (%foundObject > 0) + { + if(%foundObject.getType() & $TypeMasks::PlayerObjectType) + { + //Get the target's location and set it as the bot's return point + %obj.returningPos = %tgt.player.getposition(); + %obj.returningTrans = %tgt.player.gettransform(); + %obj.lostest = 1; + return true; + } + else + { + //If the bot just lost sight of the player, get the player's position a short time after that + if(%obj.lostest == 1) + { + %obj.lostest = 0; + %this.lostrigger = %this.schedule($AI_GUARD_LOS_TIME,"getnewguardposition", %obj, %tgt); + } + return false; + } + } +} + +//Get the player's position a short time after sight is lost +function AIPlayer::GetNewGuardPosition(%this, %obj, %tgt) +{ + %obj.returningPos = %tgt.player.getposition(); + %obj.returningTrans = %tgt.player.gettransform(); +} + +function AIPlayer::GetClosestHumanInSightandRange(%this, %obj) +{ + %dist=0; + %index = -1; //sets the initial index value to -1 The index is the id number of the nearest + //human target found + %botpos = %this.getposition(); //The bots current position + %count = ClientGroup.getCount(); //The number of clients to check + + //The for-next loop cycles through all of the valid clients + for(%i=0; %i < %count; %i++) + { + %client = ClientGroup.getobject(%i); //Get the client info for the client at index %i + + //If the client is invalid then the function bails out returning a -1 value, for no target found. + if (%client.player !$= "" && %client.player > 0) + { + //The following line just changes the %client to %tgt to make it easier to follow the code below + %tgt = %client; + + %playpos = %client.player.getposition(); //Assigns the player position to a variable + + %tempdist = vectorDist(%playpos, %botpos); //Determine the distance from the bot to the target + + //The first test we perform is to see if the target is within the bots range + //Is target in range? If not bail out of checking to see if its in view. + if (%tempdist <= %obj.detdis) + { + + //Lower attentionlevel to increase response time... + %this.attentionlevel--; + + //Prevent the attention level from dropping below 1 + if(%this.attentionlevel < 1) %this.attentionlevel = 1; + + //The second check is to see if the target is within the FOV of the bot. + //Is the target within the fov field of vision of the bot? + if(%this.Istargetinview(%obj, %tgt, %obj.fov)) + { + + //Lower attentionlevel to increase response time... + %this.attentionlevel--; + + //Prevent the attention level from dropping below 1 + if(%this.attentionlevel < 1) %this.attentionlevel = 1; + + //The third check we run is to see if there is anything blocking the + //target from the bot. + if(%this.CheckLOS(%obj, %tgt)) + { + //We lower the bots attention level again, to further increase it's + //response time, this effectively means that the bot will respnd faster to + //objects that are both in range and in plain sight. + %this.attentionlevel--; + + //Prevent the attention level from dropping below 1 + if(%this.attentionlevel < 1) %this.attentionlevel = 1; + + //If there is a current target, then check the distance to the new target as + //compared to the current set target. If the new target is closest, then set + //the index and tempdistance to the new target. + if(%tempdist < %dist || %dist == 0) + { + %dist = %tempdist; + %index = %i; + } + } + } + } + } + else + { + //If there are no targets in view, then the bots attention will slowly lapse and increase + //This will slow down how fast the bot thinks and how often it checks for threats. + %this.attentionlevel = %this.attentionlevel + 0.5; + if(%this.attentionlevel > $AI_GUARD_MAX_ATTENTION) %this.attentionlevel = $AI_GUARD_MAX_ATTENTION; + } + } + + return %index; +} + +function AIPlayer::GetClosestItemInSightandRange(%this, %obj, %itemname) +{ + %dist=0; + %index = -1; + %botpos = %this.getposition(); + InitContainerRadiusSearch(%botpos, $AI_GUARD_DETECT_ITEM_RANGE, $TypeMasks::ItemObjectType); + while ((%item = containerSearchNext()) != 0) + { + if (%item.getDataBlock().getName() $= %itemname) + { + %itempos = %item.getposition(); + %tempdist = vectorDist(%itempos, %botpos); + + if(%this.IsIteminview(%obj, %item, %obj.fov)) + { + if(%this.CheckLOStoItem(%obj, %item)) + { + if(%tempdist < %dist || %dist == 0) + { + %dist = %tempdist; + %index = %item; + } + } + } + } + } + return %index; +} + +//This function checks to see if the target supplied is within the bots FOV +function AIPlayer::IsItemInView(%this, %obj, %item, %fov) +{ + %ang = %this.check2dangletoitem(%obj, %item); + %visleft = 360 - (%fov/2); + %visright = %fov/2; + if (%ang > %visleft || %ang < %visright) + { + return true; + } + else + { + return false; + } +} + +//This function checks to see if the target supplied is within the bots FOV +function AIPlayer::IsTargetInView(%this, %obj, %tgt, %fov) +{ + %ang = %this.check2dangletotarget(%obj, %tgt); + %visleft = 360 - (%fov/2); + %visright = %fov/2; + if (%ang > %visleft || %ang < %visright) + { + return true; + } + else + { + return false; + } +} + +//Check if the location the bot is moving to is in sight. +//And if it's not, move somwhere that is in sight (if there's a better place). +function AIPlayer::dontMoveAlongTheWall(%this, %obj) +{ + //Save the original destination to another variable for later use + %this.moveDestinationB = %this.moveDestinationA; + + if (%this.checkMovementLos(%obj)) + { + return; + } + else + { + //Word(0) of %this.moveDestinationB (which is the x value) is set to equal the value of %this.moveDestinationA's Word(0). + %this.moveDestinationB = setWord(%this.moveDestinationB, 0, (getWord(%this.moveDestinationA, 0))); + //Word(1) of %this.moveDestinationB (which is the y value) is set to equal the value of %this.getposition()'s Word(1). + %this.moveDestinationB = setWord(%this.moveDestinationB, 1, (getWord(%this.getposition(), 1))); + + if (%this.checkMovementLos(%obj)) + { + //Add AI_GUARD_CORNERING's value to the destination's value + %this.moveDestinationB = setWord(%this.moveDestinationB, 0, (getWord(%this.moveDestinationA, 0) + $AI_GUARD_CORNERING)); + %this.moveDestinationB = setWord(%this.moveDestinationB, 1, (getWord(%this.getposition(), 1) + $AI_GUARD_CORNERING)); + + if (%this.checkMovementLos(%obj)) + { + return; + } + else + { + //Or else subtracts AI_GUARD_CORNERING's value from the destination's value + %this.moveDestinationB = setWord(%this.moveDestinationB, 0, (getWord(%this.moveDestinationA, 0) - $AI_GUARD_CORNERING)); + %this.moveDestinationB = setWord(%this.moveDestinationB, 1, (getWord(%this.getposition(), 1) - $AI_GUARD_CORNERING)); + %obj.setmovedestination(%this.moveDestinationB); + } + } + else + { + //Word(0) of %this.moveDestinationB (which is the x value) is set to equal the value of %this.getposition()'s Word(0). + %this.moveDestinationB = setWord(%this.moveDestinationB, 0, (getWord(%this.getposition(), 0))); + //Word(1) of %this.moveDestinationB (which is the y value) is set to equal the value of %this.moveDestinationA's Word(1). + %this.moveDestinationB = setWord(%this.moveDestinationB, 1, (getWord(%this.moveDestinationA, 1))); + + if (%this.checkMovementLos(%obj)) + { + //Add AI_GUARD_CORNERING's value to the destination's value + %this.moveDestinationB = setWord(%this.moveDestinationB, 0, (getWord(%this.getposition(), 0) + $AI_GUARD_CORNERING)); + %this.moveDestinationB = setWord(%this.moveDestinationB, 1, (getWord(%this.moveDestinationA, 1) + $AI_GUARD_CORNERING)); + + if (%this.checkMovementLos(%obj)) + { + return; + } + else + { + //Or else subtracts AI_GUARD_CORNERING's value from the destination's value + %this.moveDestinationB = setWord(%this.moveDestinationB, 0, (getWord(%this.getposition(), 0) - $AI_GUARD_CORNERING)); + %this.moveDestinationB = setWord(%this.moveDestinationB, 1, (getWord(%this.moveDestinationA, 1) - $AI_GUARD_CORNERING)); + %obj.setmovedestination(%this.moveDestinationB); + } + } + else + { + %obj.setmovedestination(%this.moveDestinationA); + } + } + } +} + +//Line of sight test for the position the bot wants to move to +function AIPlayer::checkMovementLos(%this, %obj) +{ + %eyeTrans = %obj.getEyeTransform(); + %eyeEnd = %this.moveDestinationB; + %searchResult = containerRayCast(%eyeTrans, %eyeEnd, $TypeMasks::StaticTSObjectType | $TypeMasks::TerrainObjectType | + $TypeMasks::ItemObjectType | $TypeMasks::InteriorObjectType | $TypeMasks::StaticObjectType, %obj); + %foundObject = getword(%searchResult,0); + + if (%foundObject == 0) + { + //Check to make sure the bot isn't already extremly close to its dstination + %basedist = vectorDist(%obj.getposition(), %this.moveDestinationB); + + if (%basedist > 0.5) + { + %obj.setmovedestination(%this.moveDestinationB); + return true; + } + else + { + return false; + } + } + + else + { + return false; + } +} + +// Gets the closest player to object. Used by the trigger to determine if a player triggered it. +function AIPlayer::GetClosestPlayer(%this, %obj) +{ + %dist=0; + %index = -1; //sets the initial index value to -1 The index is the id number of the nearest + //human target found + %botpos = %this.getposition(); //The bots current position + %count = ClientGroup.getCount(); //The number of clients to check + + //The for-next loop cycles through all of the valid clients + for(%i=0; %i < %count; %i++) + { + %client = ClientGroup.getobject(%i); //Get the client info for the client at index %i + + //If the client is invalid then the function bails out returning a -1 value, for no + //target found. + if (%client.player !$= "" && %client.player > 0) + { + %index = %client.player; + } + } +} + +//----------------------------------------------------------------------------- +// Pathed AI Functions +//----------------------------------------------------------------------------- + +//Start the bot following a path +function AIPlayer::followPath(%this, %path, %node, %obj) +{ + //Check if the bot is pathed + if (!isObject(%path)) + { + %this.path = ""; + return; + } + + %dist = 0; + %tempdist = 0; + %index = -1; + %botpos = %this.getposition(); + %count = %path.getCount(); + //Cycle through all nodes on this path and set the closest node as the bot's current location + while ((%node = %count) != 0) + { + %nodepos = %this.path.getObject(%count - 1).getposition(); + %tempdist = vectorDist(%nodepos, %botpos); + + if(%tempdist < %dist || %dist == 0) + { + %dist = %tempdist; + %index = %node; + } + %count--; + } + %index = %index - 1; + %this.moveToNode(%index); + + if (%index > %path.getCount() - 1) + { + %this.targetNode = %path.getCount() - 1; + } + else + { + %this.targetNode = %index; + } +} + +function AIPlayer::moveToNextNode(%this, %obj) +{ + //See if the bot just sidesteped + if (%this.returningPath == 2) + { + //Set returningPath back to 1 for other functions + %this.returningPath = 1; + %this.moveToNode(%this.currentNode); + return; + } + + //See where the bot is and where it should be going + if (%this.targetNode < 0 || %this.currentNode < %this.targetNode) + { + if (%this.currentNode < %this.path.getCount() - 1) + { + %this.moveToNode(%this.currentNode + 1); + } + else + { + %this.moveToNode(0); + } + } + else + { + if (%this.currentNode == 0) + { + %this.moveToNode(%this.path.getCount() - 1); + } + else + { + %this.moveToNode(%this.currentNode - 1); + } + } +} + +function AIPlayer::moveToNode(%this, %index, %obj) +{ + //Move to the given path node index + %this.currentNode = %index; + %node = %this.path.getObject(%index); + %this.setMoveDestination(%node.getTransform()); + %this.targetNode = %this.currentNode + 1; + + //Make the bot face the node it's moving to + %this.setAimLocation(%this.path.getObject(%this.currentNode).getposition()); +} diff --git a/Templates/Modules/AI_Guard/Scripts/guardTrigger.cs b/Templates/Modules/AI_Guard/Scripts/guardTrigger.cs new file mode 100644 index 000000000..e72de4a20 --- /dev/null +++ b/Templates/Modules/AI_Guard/Scripts/guardTrigger.cs @@ -0,0 +1,34 @@ + +function guardTrigger::onEnterTrigger(%this, %trigger, %obj) +{ + echo(%trigger @ " has been triggered!"); + // we've been triggered. Now check to see if the player triggered the trigger + // we don't want other enemies to keep spawing more enemies! + %tgtid = AIPlayer::GetClosestPlayer(%trigger); + //echo("nearest human is " @ %tgtid); + // check to see if the player triggered this. + if (%tgtid == %obj) + { + // if triggerMany is set, then we shouldn't do anything. (or do something different.) + // if you want a trigger to always spawn an enemy, set the trigger's triggerMany value to "true" + // default behavior is to trigger once. + if (!%trigger.triggerMany && !%trigger.doneOnce) + { + + // set the spawnGroup variable to pass on to the spawn function + %spawnGroup = %trigger.spawnGroup; + + // let the game know we've already been triggered once. + %trigger.doneOnce = true; + + // spawn the group + AIPlayer::spawnByGroup(%spawnGroup); + + } + else + { + // we've been triggered before. Don't do anything + // If you wanted to do something different, this is where you would put it. + } + } +} \ No newline at end of file diff --git a/Templates/Modules/PostFXPack/PostFXPack.cs b/Templates/Modules/PostFXPack/PostFXPack.cs new file mode 100644 index 000000000..0e3b875fc --- /dev/null +++ b/Templates/Modules/PostFXPack/PostFXPack.cs @@ -0,0 +1,9 @@ +function PostFXPack::onCreate(%this) +{ + exec("./Scripts/postFXPack.cs"); +} + +function PostFXPack::onDestroy(%this) +{ +} + diff --git a/Templates/Modules/PostFXPack/PostFXPack.module b/Templates/Modules/PostFXPack/PostFXPack.module new file mode 100644 index 000000000..d783cd18d --- /dev/null +++ b/Templates/Modules/PostFXPack/PostFXPack.module @@ -0,0 +1,15 @@ + + + diff --git a/Templates/Modules/PostFXPack/Scripts/postFX.cs b/Templates/Modules/PostFXPack/Scripts/postFX.cs new file mode 100644 index 000000000..317845636 --- /dev/null +++ b/Templates/Modules/PostFXPack/Scripts/postFX.cs @@ -0,0 +1,25 @@ +//----------------------------------------------------------------------------- +// Copyright (c) 2012 GarageGames, LLC +// +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to +// deal in the Software without restriction, including without limitation the +// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or +// sell copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in +// all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS +// IN THE SOFTWARE. +//----------------------------------------------------------------------------- + +//***************************************************************************** +// Shaders ( For Custom Materials ) +//***************************************************************************** diff --git a/Templates/Modules/PostFXPack/Scripts/postFXPack.cs b/Templates/Modules/PostFXPack/Scripts/postFXPack.cs new file mode 100644 index 000000000..ad1a22e72 --- /dev/null +++ b/Templates/Modules/PostFXPack/Scripts/postFXPack.cs @@ -0,0 +1,351 @@ +// PIXELATE +$Pixelate::PixelWidth = 10.0; +$Pixelate::PixelHeight = 10.0; +singleton ShaderData( PixelateShader ) +{ + DXVertexShaderFile = "shaders/common/postFx/postFxV.hlsl"; + DXPixelShaderFile = "shaders/common/postFx/Library/pixelateP.hlsl"; + pixVersion = 2.0; +}; + +singleton PostEffect( PixelatePostEffect ) +{ + isEnabled = false; + allowReflectPass = false; + renderTime = "PFXAfterBin"; + renderBin = "GlowBin"; + shader = PixelateShader; + stateBlock = PFX_DefaultStateBlock; + texture[0] = "$backBuffer"; + renderPriority = 10; +}; + +function PixelatePostEffect::setShaderConsts(%this) +{ + %this.setShaderConst("$pixel_w", $Pixelate::PixelWidth); + %this.setShaderConst("$pixel_h", $Pixelate::PixelHeight); + %this.setShaderConst("$sizeX",getWord($pref::Video::mode, 0)); + %this.setShaderConst("$sizeY",getWord($pref::Video::mode, 1)); +} + +// BLURRED VISION +$BlurredVisionIntensity = 1.0; +singleton ShaderData( BlurredVisionShader ) +{ + DXVertexShaderFile = "shaders/common/postFx/postFxV.hlsl"; + DXPixelShaderFile = "shaders/common/postFx/Library/blurredVisionP.hlsl"; + pixVersion = 2.0; +}; + +singleton PostEffect( BlurredVisionPostEffect ) +{ + isEnabled = false; + allowReflectPass = false; + renderTime = "PFXAfterBin"; + renderBin = "GlowBin"; + shader = BlurredVisionShader; + stateBlock = PFX_DefaultStateBlock; + texture[0] = "$backBuffer"; + renderPriority = 10; +}; + +function BlurredVisionPostEffect::setShaderConsts(%this) +{ + %this.setShaderConst("$BlurredVisionIntensity", $BlurredVisionIntensity); +} + +// DREAM VIEW +$DreamViewIntensity = 1.0; +singleton ShaderData( DreamViewShader ) +{ + DXVertexShaderFile = "shaders/common/postFx/postFxV.hlsl"; + DXPixelShaderFile = "shaders/common/postFx/Library/dreamviewP.hlsl"; + pixVersion = 2.0; +}; + +singleton PostEffect( DreamViewPostEffect ) +{ + isEnabled = false; + allowReflectPass = false; + renderTime = "PFXAfterBin"; + renderBin = "GlowBin"; + shader = DreamViewShader; + stateBlock = PFX_DefaultStateBlock; + texture[0] = "$backBuffer"; + renderPriority = 10; +}; + +function DreamViewPostEffect::setShaderConsts(%this) +{ + %this.setShaderConst("$DreamViewIntensity", $DreamViewIntensity); +} + +// CROSS STITCH +$CrossStichPostEffect::StitchingSize = 6.0; +$CrossStichPostEffect::Invert = 0; +singleton ShaderData( CrossStitchShader ) +{ + DXVertexShaderFile = "shaders/common/postFx/postFxV.hlsl"; + DXPixelShaderFile = "shaders/common/postFx/Library/crossStitchP.hlsl"; + pixVersion = 3.0; +}; + +singleton PostEffect( CrossStitchPostEffect ) +{ + isEnabled = false; + allowReflectPass = false; + renderTime = "PFXAfterBin"; + renderBin = "GlowBin"; + shader = CrossStitchShader; + stateBlock = PFX_DefaultStateBlock; + texture[0] = "$backBuffer"; + renderPriority = 10; +}; + +function CrossStitchPostEffect::setShaderConsts(%this) +{ + %this.setShaderConst( "$time", ($Sim::time - %this.timeStart) ); + %this.setShaderConst("$sizeX",getWord($pref::Video::mode, 0)); + %this.setShaderConst("$sizeY",getWord($pref::Video::mode, 1)); + %this.setShaderConst("$stitching_size", $CrossStichPostEffect::StitchingSize); + %this.setShaderConst("$invert", $CrossStichPostEffect::Invert); +} + +// POSTERISATION +$PosterisationPostEffect::Gamma = 0.6; +$PosterisationPostEffect::NumColors = 4.0; +singleton ShaderData( PosterisationShader ) +{ + DXVertexShaderFile = "shaders/common/postFx/postFxV.hlsl"; + DXPixelShaderFile = "shaders/common/postFx/Library/posterisationP.hlsl"; + pixVersion = 2.0; +}; + +singleton PostEffect( PosterisationPostEffect ) +{ + isEnabled = false; + allowReflectPass = false; + renderTime = "PFXAfterBin"; + renderBin = "GlowBin"; + shader = PosterisationShader; + stateBlock = PFX_DefaultStateBlock; + texture[0] = "$backBuffer"; + renderPriority = 10; +}; + +function PosterisationPostEffect::setShaderConsts(%this) +{ + %this.setShaderConst("$gamma", $PosterisationPostEffect::Gamma); + %this.setShaderConst("$numColors", $PosterisationPostEffect::NumColors); +} + +// NIGHT VISION 2 +$NightVisionPostEffect::LuminanceThreshold = 0.2; +$NightVisionPostEffect::ColorAmplification = 4.0; + +singleton ShaderData( NightVision2Shader ) +{ + DXVertexShaderFile = "shaders/common/postFx/postFxV.hlsl"; + DXPixelShaderFile = "shaders/common/postFx/Library/nightVision2P.hlsl"; + pixVersion = 2.0; +}; + +singleton PostEffect( NightVision2Fx ) +{ + isEnabled = false; + allowReflectPass = false; + renderTime = "PFXAfterBin"; + renderBin = "GlowBin"; + shader = NightVision2Shader; + stateBlock = PFX_DefaultStateBlock; + texture[0] = "$backBuffer"; + renderPriority = 10; +}; + +function NightVision2Fx::setShaderConsts(%this) +{ + %this.setShaderConst("$luminanceThreshold", $NightVisionPostEffect::LuminanceThreshold); + %this.setShaderConst("$colorAmplification", $NightVisionPostEffect::ColorAmplification); +} + +// LENS CIRCLE +$LensCirclePostEffect::RadiusX = 0.6; +$LensCirclePostEffect::RadiusY = 0.2; + +singleton ShaderData( LensCircleShader ) +{ + DXVertexShaderFile = "shaders/common/postFx/postFxV.hlsl"; + DXPixelShaderFile = "shaders/common/postFx/Library/lensCircleP.hlsl"; + pixVersion = 2.0; +}; + +singleton PostEffect( LensCirclePostEffect ) +{ + isEnabled = false; + allowReflectPass = false; + renderTime = "PFXAfterBin"; + renderBin = "GlowBin"; + shader = LensCircleShader; + stateBlock = PFX_DefaultStateBlock; + texture[0] = "$backBuffer"; + renderPriority = 10; +}; + +function LensCirclePostEffect::setShaderConsts(%this) +{ + %this.setShaderConst("$radiusX", $LensCirclePostEffect::RadiusX); + %this.setShaderConst("$radiusY", $LensCirclePostEffect::RadiusY); +} + +// CHROMATIC ABERRATION +$ChromaticAberrationPostEffect::Intensity = 0.3; +singleton ShaderData( ChromaticAberrationShader ) +{ + DXVertexShaderFile = "shaders/common/postFx/postFxV.hlsl"; + DXPixelShaderFile = "shaders/common/postFx/Library/chromaticAberrationP.hlsl"; + pixVersion = 2.0; +}; + +singleton PostEffect( ChromaticAberrationPostEffect ) +{ + isEnabled = false; + allowReflectPass = false; + renderTime = "PFXAfterBin"; + renderBin = "GlowBin"; + shader = ChromaticAberrationShader; + stateBlock = PFX_DefaultStateBlock; + texture[0] = "$backBuffer"; + renderPriority = 10; +}; + +function ChromaticAberrationPostEffect::setShaderConsts(%this) +{ + %this.setShaderConst("$intensity", $ChromaticAberrationPostEffect::Intensity); +} + +// RGB +$RGBPostEffect::RedLevel = 1.0; +$RGBPostEffect::GreenLevel = 1.0; +$RGBPostEffect::BlueLevel = 1.0; +singleton ShaderData( RGBShader ) +{ + DXVertexShaderFile = "shaders/common/postFx/postFxV.hlsl"; + DXPixelShaderFile = "shaders/common/postFx/Library/rgbP.hlsl"; + pixVersion = 2.0; +}; + +singleton PostEffect( RGBPostEffect ) +{ + isEnabled = false; + allowReflectPass = false; + renderTime = "PFXAfterBin"; + renderBin = "GlowBin"; + shader = RGBShader; + stateBlock = PFX_DefaultStateBlock; + texture[0] = "$backBuffer"; + renderPriority = 10; +}; + +function RGBPostEffect::setShaderConsts(%this) +{ + %this.setShaderConst("$redLevel", $RGBPostEffect::RedLevel); + %this.setShaderConst("$greenLevel", $RGBPostEffect::GreenLevel); + %this.setShaderConst("$blueLevel", $RGBPostEffect::BlueLevel); +} + +// ZOOM BLUR +$ZoomBlur::Amount = 0.99; +$ZoomBlur::Samples = 6; + +singleton ShaderData( ZoomBlurShader ) +{ + DXVertexShaderFile = "shaders/common/postFx/postFxV.hlsl"; + DXPixelShaderFile = "shaders/common/postFx/Library/zoomBlurP.hlsl"; + samplerNames[0] = "$inputTex"; + pixVersion = 3.0; +}; + +singleton PostEffect( ZoomBlurPostEffect ) +{ + renderTime = "PFXAfterDiffuse"; + shader = ZoomBlurShader; + stateBlock = PFX_DefaultStateBlock; + texture[0] = "$backBuffer"; +}; + +function ZoomBlurPostEffect::setShaderConsts(%this) +{ + %this.setShaderConst("$amount", $ZoomBlur::Amount); + %this.setShaderConst("$samples", $ZoomBlur::Samples); +} + +// NEGATIVE +singleton ShaderData( NegativeShader ) +{ + DXVertexShaderFile = "shaders/common/postFx/postFxV.hlsl"; + DXPixelShaderFile = "shaders/common/postFx/Library/negativeP.hlsl"; + pixVersion = 2.0; +}; + +singleton PostEffect( NegativePostEffect ) +{ + renderTime = "PFXAfterDiffuse"; + shader = NegativeShader; + stateBlock = PFX_DefaultStateBlock; + texture[0] = "$backBuffer"; +}; + +// BLACK AND WHITE +singleton ShaderData( BlackAndWhiteShader ) +{ + DXVertexShaderFile = "shaders/common/postFx/postFxV.hlsl"; + DXPixelShaderFile = "shaders/common/postFx/Library/blackAndWhiteP.hlsl"; + pixVersion = 2.0; +}; + +singleton PostEffect( BlackAndWhitePostEffect ) +{ + renderTime = "PFXAfterDiffuse"; + shader = BlackAndWhiteShader; + stateBlock = PFX_DefaultStateBlock; + texture[0] = "$backBuffer"; +}; + +// MONOCHROME +singleton ShaderData( MonochromeShader ) +{ + DXVertexShaderFile = "shaders/common/postFx/postFxV.hlsl"; + DXPixelShaderFile = "shaders/common/postFx/Library/monochromeP.hlsl"; + pixVersion = 2.0; +}; + +singleton PostEffect( MonochromePostEffect ) +{ + renderTime = "PFXAfterDiffuse"; + shader = MonochromeShader; + stateBlock = PFX_DefaultStateBlock; + texture[0] = "$backBuffer"; +}; + +// EDGE DETECTION +$EdgeDetection::Threshold = 0.01; + +singleton ShaderData( EdgeDetectionShader ) +{ + DXVertexShaderFile = "shaders/common/postFx/postFxV.hlsl"; + DXPixelShaderFile = "shaders/common/postFx/Library/edgeDetectionP.hlsl"; + pixVersion = 2.0; +}; + +singleton PostEffect( EdgeDetectionPostEffect ) +{ + renderTime = "PFXAfterDiffuse"; + shader = EdgeDetectionShader; + stateBlock = PFX_DefaultStateBlock; + texture[0] = "$backBuffer"; +}; + +function EdgeDetectionPostEffect::setShaderConsts(%this) +{ + %this.setShaderConst("$threshold", $EdgeDetection::Threshold); +} \ No newline at end of file diff --git a/Templates/Modules/PostFXPack/Shaders/blackAndWhiteP.hlsl b/Templates/Modules/PostFXPack/Shaders/blackAndWhiteP.hlsl new file mode 100644 index 000000000..a4f57579d --- /dev/null +++ b/Templates/Modules/PostFXPack/Shaders/blackAndWhiteP.hlsl @@ -0,0 +1,21 @@ +#include "shaders/common/postFx/postFx.hlsl" +#include "../../torque.hlsl" + +TORQUE_UNIFORM_SAMPLER2D(backBuffer, 0); + +float4 main(PFXVertToPix IN) : TORQUE_TARGET0 +{ + float4 base = TORQUE_TEX2D(backBuffer, IN.uv0); + base.a = 1.0f; + + base.rgb = (base.r + base.g + base.b) / 3.0f; + + if (base.r < 0.5) + base.r = 0.0f; + else + base.r = 1.0f; + + base.gb = base.r; + + return base; +} \ No newline at end of file diff --git a/Templates/Modules/PostFXPack/Shaders/blurredVisionP.hlsl b/Templates/Modules/PostFXPack/Shaders/blurredVisionP.hlsl new file mode 100644 index 000000000..01015dad2 --- /dev/null +++ b/Templates/Modules/PostFXPack/Shaders/blurredVisionP.hlsl @@ -0,0 +1,29 @@ +#include "shaders/common/postFx/postFx.hlsl" +#include "shadergen:/autogenConditioners.h" +#include "../../torque.hlsl" + +TORQUE_UNIFORM_SAMPLER2D(backBuffer, 0); +uniform float BlurredVisionIntensity; + +float4 main(PFXVertToPix IN) : TORQUE_TARGET0 +{ + float4 base = TORQUE_TEX2D(backBuffer, IN.uv0); + + base += TORQUE_TEX2D(backBuffer, IN.uv0+(0.001 * BlurredVisionIntensity)); + base += TORQUE_TEX2D(backBuffer, IN.uv0+(0.003 * BlurredVisionIntensity)); + base += TORQUE_TEX2D(backBuffer, IN.uv0+(0.005 * BlurredVisionIntensity)); + base += TORQUE_TEX2D(backBuffer, IN.uv0+(0.007 * BlurredVisionIntensity)); + base += TORQUE_TEX2D(backBuffer, IN.uv0+(0.009 * BlurredVisionIntensity)); + base += TORQUE_TEX2D(backBuffer, IN.uv0+(0.011 * BlurredVisionIntensity)); + + base += TORQUE_TEX2D(backBuffer, IN.uv0-(0.001 * BlurredVisionIntensity)); + base += TORQUE_TEX2D(backBuffer, IN.uv0-(0.003 * BlurredVisionIntensity)); + base += TORQUE_TEX2D(backBuffer, IN.uv0-(0.005 * BlurredVisionIntensity)); + base += TORQUE_TEX2D(backBuffer, IN.uv0-(0.007 * BlurredVisionIntensity)); + base += TORQUE_TEX2D(backBuffer, IN.uv0-(0.009 * BlurredVisionIntensity)); + base += TORQUE_TEX2D(backBuffer, IN.uv0-(0.011 * BlurredVisionIntensity)); + + base = base / 15.0; // 9.5 + + return base; +} \ No newline at end of file diff --git a/Templates/Modules/PostFXPack/Shaders/chromaticAberrationP.hlsl b/Templates/Modules/PostFXPack/Shaders/chromaticAberrationP.hlsl new file mode 100644 index 000000000..7515c4295 --- /dev/null +++ b/Templates/Modules/PostFXPack/Shaders/chromaticAberrationP.hlsl @@ -0,0 +1,24 @@ +#include "shaders/common/postFx/postFx.hlsl" +#include "shadergen:/autogenConditioners.h" + +uniform float accumTime; +TORQUE_UNIFORM_SAMPLER2D(backBuffer, 0); +uniform float intensity; + +float4 main(PFXVertToPix IN) : TORQUE_TARGET0 +{ + float2 coords = IN.uv0; + float2 uv = IN.uv0; + + coords = (coords - 0.5) * 2.0; + + float coordDot = dot(coords, coords); + + float2 uvG = uv - TORQUE_TEX2D(backBuffer, IN.uv0).xy * intensity * coords * coordDot; + + float4 base = TORQUE_TEX2D(backBuffer, IN.uv0); + + base.g = TORQUE_TEX2D(backBuffer, uvG).g; + + return base; +} \ No newline at end of file diff --git a/Templates/Modules/PostFXPack/Shaders/crossStitchP.hlsl b/Templates/Modules/PostFXPack/Shaders/crossStitchP.hlsl new file mode 100644 index 000000000..857a109d4 --- /dev/null +++ b/Templates/Modules/PostFXPack/Shaders/crossStitchP.hlsl @@ -0,0 +1,39 @@ +#include "shaders/common/postFx/postFx.hlsl" +#include "shadergen:/autogenConditioners.h" + +TORQUE_UNIFORM_SAMPLER2D(backBuffer, 0); +uniform float time; +uniform float sizeX; // rt_w +uniform float sizeY; // rt_h +uniform float stitching_size = 6.0; +uniform int invert = 0; + +float4 main(PFXVertToPix IN) : TORQUE_TARGET0 +{ + float4 base = float4(0.0, 0.0, 0.0, 0.0); + float size = stitching_size; + float2 cPos = IN.uv0 * float2(sizeX, sizeY); + float2 tlPos = floor(cPos / float2(size, size)); + tlPos *= size; + int remX = int(cPos.x % size); + int remY = int(cPos.y % size); + if (remX == 0 && remY == 0) + tlPos = cPos; + float2 blPos = tlPos; + blPos.y += (size - 1.0); + if ((remX == remY) || (((int(cPos.x) - int(blPos.x)) == (int(blPos.y) - int(cPos.y))))) + { + if (invert == 1) + base = float4(0.2, 0.15, 0.05, 1.0); + else + base = TORQUE_TEX2D(backBuffer, tlPos * float2(1.0/sizeX, 1.0/sizeY)) * 1.4; + } + else + { + if (invert == 1) + base = TORQUE_TEX2D(backBuffer, tlPos * float2(1.0/sizeX, 1.0/sizeY)) * 1.4; + else + base = float4(0.0, 0.0, 0.0, 1.0); + } + return base; +} \ No newline at end of file diff --git a/Templates/Modules/PostFXPack/Shaders/dreamviewP.hlsl b/Templates/Modules/PostFXPack/Shaders/dreamviewP.hlsl new file mode 100644 index 000000000..7fc201571 --- /dev/null +++ b/Templates/Modules/PostFXPack/Shaders/dreamviewP.hlsl @@ -0,0 +1,30 @@ +#include "shaders/common/postFx/postFx.hlsl" +#include "shadergen:/autogenConditioners.h" +#include "../../torque.hlsl" + +TORQUE_UNIFORM_SAMPLER2D(backBuffer, 0); +uniform float DreamViewIntensity; + +float4 main(PFXVertToPix IN) : TORQUE_TARGET0 +{ + float4 base = TORQUE_TEX2D(backBuffer, IN.uv0); + + base += TORQUE_TEX2D(backBuffer, IN.uv0+(0.001 * DreamViewIntensity)); + base += TORQUE_TEX2D(backBuffer, IN.uv0+(0.003 * DreamViewIntensity)); + base += TORQUE_TEX2D(backBuffer, IN.uv0+(0.005 * DreamViewIntensity)); + base += TORQUE_TEX2D(backBuffer, IN.uv0+(0.007 * DreamViewIntensity)); + base += TORQUE_TEX2D(backBuffer, IN.uv0+(0.009 * DreamViewIntensity)); + base += TORQUE_TEX2D(backBuffer, IN.uv0+(0.011 * DreamViewIntensity)); + + base += TORQUE_TEX2D(backBuffer, IN.uv0-(0.001 * DreamViewIntensity)); + base += TORQUE_TEX2D(backBuffer, IN.uv0-(0.003 * DreamViewIntensity)); + base += TORQUE_TEX2D(backBuffer, IN.uv0-(0.005 * DreamViewIntensity)); + base += TORQUE_TEX2D(backBuffer, IN.uv0-(0.007 * DreamViewIntensity)); + base += TORQUE_TEX2D(backBuffer, IN.uv0-(0.009 * DreamViewIntensity)); + base += TORQUE_TEX2D(backBuffer, IN.uv0-(0.011 * DreamViewIntensity)); + + base.rgb = (base.r + base.g + base.b)/3.0; + base = base / 9.5; + + return base; +} \ No newline at end of file diff --git a/Templates/Modules/PostFXPack/Shaders/edgeDetectionP.hlsl b/Templates/Modules/PostFXPack/Shaders/edgeDetectionP.hlsl new file mode 100644 index 000000000..f871526b3 --- /dev/null +++ b/Templates/Modules/PostFXPack/Shaders/edgeDetectionP.hlsl @@ -0,0 +1,48 @@ +#include "shaders/common/postFx/postFx.hlsl" +#include "../../torque.hlsl" + +TORQUE_UNIFORM_SAMPLER2D(backBuffer, 0); +uniform float threshold; + +float4 main(PFXVertToPix IN) : TORQUE_TARGET0 +{ + float4 base = TORQUE_TEX2D(backBuffer, IN.uv0); + + const int NUM = 9; + + const float2 c[NUM] = + { + float2(-0.0078125, 0.0078125), + float2( 0.00 , 0.0078125), + float2( 0.0078125, 0.0078125), + float2(-0.0078125, 0.00 ), + float2( 0.0, 0.0), + float2( 0.0078125, 0.007 ), + float2(-0.0078125,-0.0078125), + float2( 0.00 , -0.0078125), + float2( 0.0078125,-0.0078125), + }; + + int i; + float3 col[NUM]; + + for (i=0; i < NUM; i++) + { + col[i] = TORQUE_TEX2D(backBuffer, IN.uv0 + 0.2*c[i]); + } + + float3 rgb2lum = float3(0.30, 0.59, 0.11); + float lum[NUM]; + for (i = 0; i < NUM; i++) + { + lum[i] = dot(col[i].xyz, rgb2lum); + } + + float x = lum[2]+ lum[8]+2*lum[5]-lum[0]-2*lum[3]-lum[6]; + float y = lum[6]+2*lum[7]+ lum[8]-lum[0]-2*lum[1]-lum[2]; + float edge =(x*x + y*y < threshold)? 1.0:0.0; + + base.rgb *= edge; + + return base; +} \ No newline at end of file diff --git a/Templates/Modules/PostFXPack/Shaders/lensCircleP.hlsl b/Templates/Modules/PostFXPack/Shaders/lensCircleP.hlsl new file mode 100644 index 000000000..6729b9833 --- /dev/null +++ b/Templates/Modules/PostFXPack/Shaders/lensCircleP.hlsl @@ -0,0 +1,14 @@ +#include "shaders/common/postFx/postFx.hlsl" +#include "shadergen:/autogenConditioners.h" + +TORQUE_UNIFORM_SAMPLER2D(backBuffer, 0); +uniform float radiusX; +uniform float radiusY; + +float4 main(PFXVertToPix IN) : TORQUE_TARGET0 +{ + float4 base = TORQUE_TEX2D(backBuffer, IN.uv0); + float dist = distance(IN.uv0, float2(0.5,0.5)); + base.rgb *= smoothstep(radiusX, radiusY, dist); + return base; +} \ No newline at end of file diff --git a/Templates/Modules/PostFXPack/Shaders/monochromeP.hlsl b/Templates/Modules/PostFXPack/Shaders/monochromeP.hlsl new file mode 100644 index 000000000..6332c6cd8 --- /dev/null +++ b/Templates/Modules/PostFXPack/Shaders/monochromeP.hlsl @@ -0,0 +1,13 @@ +#include "shaders/common/postFx/postFx.hlsl" +#include "../../torque.hlsl" + +TORQUE_UNIFORM_SAMPLER2D(backBuffer, 0); + +float4 main(PFXVertToPix IN) : TORQUE_TARGET0 +{ + float4 base = TORQUE_TEX2D(backBuffer, IN.uv0); + + base.rgb = (base.r + base.g + base.b) / 3.0f; + + return base; +} \ No newline at end of file diff --git a/Templates/Modules/PostFXPack/Shaders/negativeP.hlsl b/Templates/Modules/PostFXPack/Shaders/negativeP.hlsl new file mode 100644 index 000000000..c16aeb50d --- /dev/null +++ b/Templates/Modules/PostFXPack/Shaders/negativeP.hlsl @@ -0,0 +1,11 @@ +#include "shaders/common/postFx/postFx.hlsl" +#include "../../torque.hlsl" + +TORQUE_UNIFORM_SAMPLER2D(backBuffer, 0); + +float4 main(PFXVertToPix IN) : TORQUE_TARGET0 +{ + float4 base = TORQUE_TEX2D(backBuffer, IN.uv0); + base.a = 0; + return float4(1.0f, 1.0f, 1.0f, 1.0f) - base; +} \ No newline at end of file diff --git a/Templates/Modules/PostFXPack/Shaders/nightVision2P.hlsl b/Templates/Modules/PostFXPack/Shaders/nightVision2P.hlsl new file mode 100644 index 000000000..1a863b6b0 --- /dev/null +++ b/Templates/Modules/PostFXPack/Shaders/nightVision2P.hlsl @@ -0,0 +1,48 @@ +#include "shaders/common/postFx/postFx.hlsl" +#include "shadergen:/autogenConditioners.h" + +uniform float accumTime; +TORQUE_UNIFORM_SAMPLER2D(backBuffer, 0); +uniform float luminanceThreshold; // 0.2 +uniform float colorAmplification; // 4.0 + +float4 main(PFXVertToPix IN) : TORQUE_TARGET0 +{ + float speed = 100; + float Yres = 1024; + float brightness = 0.2; + + float4 finalColor = float4(1.0, 1.0, 1.0, 1.0); + + float2 uv; + uv.x = 0.4 * sin(accumTime * 50.0); + uv.y = 0.4 * cos(accumTime * 50.0); + //float m = TORQUE_TEX2D(maskTex, gl_TexCoord[0].st).r; + //vec3 n = texture2D(noiseTex, (gl_TexCoord[0].st*3.5) + uv).rgb; + float3 c = TORQUE_TEX2D(backBuffer, IN.uv0).rgb; + + float lum = dot(float3(0.30, 0.59, 0.11), c); + if (lum < luminanceThreshold) + c *= colorAmplification; + + float3 visionColor = float3(0.1, 0.95, 0.2); + finalColor.rgb = c * visionColor; + + // add noise + float noise = IN.uv0.x * IN.uv0.y * accumTime * speed; + noise = fmod(noise, 10) * fmod(noise, 100); + noise = fmod(noise, 0.01); + + float3 color = finalColor.rgb; + color = color + color * saturate(noise.xxx * 200); + + // add banding + float sin,cos; + sincos(IN.uv0.y * Yres, sin, cos); + color += color * float3(sin, cos, sin) * brightness; + + finalColor.rgb = color; + + return finalColor; + +} \ No newline at end of file diff --git a/Templates/Modules/PostFXPack/Shaders/pixelateP.hlsl b/Templates/Modules/PostFXPack/Shaders/pixelateP.hlsl new file mode 100644 index 000000000..7a4d8bb84 --- /dev/null +++ b/Templates/Modules/PostFXPack/Shaders/pixelateP.hlsl @@ -0,0 +1,21 @@ +#include "shaders/common/postFx/postFx.hlsl" +#include "shadergen:/autogenConditioners.h" + +TORQUE_UNIFORM_SAMPLER2D(backBuffer, 0); +uniform float pixel_w; +uniform float pixel_h; +uniform float sizeX; +uniform float sizeY; + +float4 main(PFXVertToPix IN) : TORQUE_TARGET0 +{ + float2 uv = IN.uv0; + + float3 base = float3(1.0, 0.0, 0.0); + float dx = pixel_w * (1.0 / sizeX); + float dy = pixel_h * (1.0 / sizeY); + float2 coord = float2(dx*floor(uv.x/dx), dy*floor(uv.y/dy)); + base = TORQUE_TEX2D(backBuffer, coord).rgb; + + return float4(base, 1.0); +} \ No newline at end of file diff --git a/Templates/Modules/PostFXPack/Shaders/posterisationP.hlsl b/Templates/Modules/PostFXPack/Shaders/posterisationP.hlsl new file mode 100644 index 000000000..8235b5d38 --- /dev/null +++ b/Templates/Modules/PostFXPack/Shaders/posterisationP.hlsl @@ -0,0 +1,17 @@ +#include "shaders/common/postFx/postFx.hlsl" +#include "shadergen:/autogenConditioners.h" + +TORQUE_UNIFORM_SAMPLER2D(backBuffer, 0); +uniform float gamma; +uniform float numColors; + +float4 main(PFXVertToPix IN) : TORQUE_TARGET0 +{ + float3 base = TORQUE_TEX2D(backBuffer, IN.uv0).rgb; + base = pow(base, float3(gamma, gamma, gamma)); + base = base * numColors; + base = floor(base); + base = base / numColors; + base = pow(base, float3(1.0/gamma, 1.0/gamma, 1.0/gamma)); + return float4(base, 1.0); +} \ No newline at end of file diff --git a/Templates/Modules/PostFXPack/Shaders/rgbP.hlsl b/Templates/Modules/PostFXPack/Shaders/rgbP.hlsl new file mode 100644 index 000000000..1dc2b33d7 --- /dev/null +++ b/Templates/Modules/PostFXPack/Shaders/rgbP.hlsl @@ -0,0 +1,16 @@ +#include "shaders/common/postFx/postFx.hlsl" +#include "shadergen:/autogenConditioners.h" + +TORQUE_UNIFORM_SAMPLER2D(backBuffer, 0); +uniform float redLevel; +uniform float greenLevel; +uniform float blueLevel; + +float4 main(PFXVertToPix IN) : TORQUE_TARGET0 +{ + float4 base = TORQUE_TEX2D(backBuffer, IN.uv0); + base.r *= redLevel; + base.g *= greenLevel; + base.b *= blueLevel; + return base; +} \ No newline at end of file diff --git a/Templates/Modules/PostFXPack/Shaders/zoomBlurP.hlsl b/Templates/Modules/PostFXPack/Shaders/zoomBlurP.hlsl new file mode 100644 index 000000000..9a7211c4b --- /dev/null +++ b/Templates/Modules/PostFXPack/Shaders/zoomBlurP.hlsl @@ -0,0 +1,25 @@ +#include "shaders/common/postFx/postFx.hlsl" +#include "../../torque.hlsl" + +uniform float amount; +uniform float samples; +TORQUE_UNIFORM_SAMPLER2D(backBuffer, 0); + +float4 main(PFXVertToPix IN) : TORQUE_TARGET0 +{ + float b = 0; + + float4 base = TORQUE_TEX2D(backBuffer, IN.uv0); + float2 uv = IN.uv0; + + [loop] for (int i = 1; i <= samples; i++) + { + uv -= b; + uv *= amount; + b = (1-(1*pow(abs(amount), i))) / 2; + uv += b; + base += TORQUE_TEX2DLOD(backBuffer, float4(uv.x, uv.y, 0, 0)); + } + + return base / (samples + 1); +} \ No newline at end of file diff --git a/Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/defaults.cs b/Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/defaults.cs new file mode 100644 index 000000000..70e31c0fb --- /dev/null +++ b/Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/defaults.cs @@ -0,0 +1,5 @@ +$RPGDialogEditorPref::ActionPath = "art/dialogs/dla/"; +$RPGDialogEditorPref::QuestionPath = "art/dialogs/dlq/"; +$RPGDialogEditorPref::PortraitsPath = "art/dialogs/portraits/"; +$RPGDialogEditorPref::mainMod="art"; +$RPGDialogEditorPref::MaxOptions = 100; diff --git a/Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/editorMain.cs b/Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/editorMain.cs new file mode 100644 index 000000000..28ffbecb7 --- /dev/null +++ b/Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/editorMain.cs @@ -0,0 +1,1378 @@ +function QuestionText::onURL(%this, %url) +{ + if(firstword(%url)!$="RPGDialog" && firstword(%url)!$="RPGDialogLink") + { + gotoWebPage( %url ); + } + else if(firstword(%url)$="RPGDialogLink") + { + editQuestionLink(restwords(%url)); + } +} + +function initSaveAsPhase1() +{ + getSaveFilename("*.dlq", initSaveAsPhase2,$RPGDialog::currentDLQ); +} + +function initSaveAsPhase2(%QuestionFile) +{ + if(strPos(strlwr(%QuestionFile),".dlq")>=0) + { + $RPGDialog::SaveAsDLQ=%QuestionFile; + if(!isFile(%QuestionFile)) + { + schedule(20,0,"getSaveFilename","*.dla",initSaveAsPhase3,$RPGDialog::currentDLA); + } + else + { + MessageBoxYesNo("Warning","File already exists, overwrite?","schedule(20,0,getSaveFilename,\"*.dla\",initSaveAsPhase3,$RPGDialog::currentDLA);","schedule(20,0,getSaveFilename,\"*.dlq\",initSaveAsPhase2,$RPGDialog::currentDLQ);"); + } + } + else + { + MessageBoxOK("Error","File must have .dlq extension"); + } +} + +function initSaveAsPhase3(%ActionFile) +{ + %testFileName=$RPGDialog::SaveAsDLQ; + while(%i<=20) + { + %nextPos=strPos(%testFileName,"/"); + if(%nextPos<0) + { + %testFileName=getSubStr(%testFileName,0,strPos(%testFileName,".dlq"))@".dla"; + %i=21; + } + else + { + %testFileName=getSubStr(%testFileName,%nextPos+1,strLen(%testFileName)); + } + %i++; + } + + if(strPos(strlwr(%ActionFile),".dla")>=0) + { + if(strPos(%ActionFile,%testFileName)>=0) + { + $RPGDialog::SaveAsDLA=%ActionFile; + if(!isFile(%ActionFile)) + { + initSaveAsPhase4(); + } + else + { + MessageBoxYesNo("Warning","File already exists, overwrite?","initSaveAsPhase4();","schedule(20,0,getSaveFilename,\"*.dla\",initSaveAsPhase3,$RPGDialog::currentDLA);"); + } + } + else + { + MessageBoxOK("Error","Dla and Dlq filenames must be equal, but may be stored in different folders."); + } + } + else + { + MessageBoxOK("Error","File must have .dla extension"); + } +} + +function initSaveAsPhase4() +{ + $RPGDialog::currentDLQ=$RPGDialog::SaveAsDLQ; + $RPGDialog::currentDLA=$RPGDialog::SaveAsDLA; + saveScript(); +} + +function initNewScript() +{ + NewScriptQuestion.setvalue($RPGDialogEditorPref::QuestionPath@"new.dlq"); + NewScriptAction.setvalue($RPGDialogEditorPref::ActionPath@"new.dla"); + Canvas.pushDialog(NewScriptPopup); +} + +function newScript() +{ + %QuestionFile=NewScriptQuestion.getvalue(); + %ActionFile=NewScriptAction.getvalue(); + + %testFileName=%QuestionFile; + while(%i<=20) + { + %nextPos=strPos(%testFileName,"/"); + if(%nextPos<0) + { + %testFileName=getSubStr(%testFileName,0,strPos(%testFileName,".dlq"))@".dla"; + %i=21; + } + else + { + %testFileName=getSubStr(%testFileName,%nextPos+1,strLen(%testFileName)); + } + %i++; + } + + if(strPos(%ActionFile,%testFileName)>=0) + { + %extensionCheck=strPos(%QuestionFile,".dlq"); + if(%extensionCheck<0) + { + %QuestionFile=%QuestionFile@".dlq"; + } + + %extensionCheck=strPos(%ActionFile,".dla"); + if(%extensionCheck<0) + { + %ActionFile=%ActionFile@".dla"; + } + + if(!isFile(%QuestionFile)) + { + if(!isFile(%ActionFile)) + { + Canvas.popDialog(NewScriptPopup); + + if(TextScript.getvalue()!$="Current Q. Script:") + { + for(%i=1;%i<=$RPGDialog::Answer[$RPGDialog::CurrentQuestion,0];%i++) + { + (Answer@%i).delete(); + (Action@%i).delete(); + (editAnswer@%i@Button).delete(); + (moveAnswer@%i@UpButton).delete(); + (moveAnswer@%i@DownButton).delete(); + } + } + + deleteVariables("$RPGDialog::*");//delete all obsolete globals and reset the 2 that are needed. + $RPGDialog::currentDLQ=%QuestionFile; + $RPGDialog::currentDLA=%ActionFile; + TextScript.settext("Current Q. Script: "@$RPGDialog::currentDLQ); + TextScript2.settext("Current A. Script: "@$RPGDialog::currentDLA); + TextQuestionNumber.settext("Question: 0/0"); + QuestionText.settext(""); + Canvas.setContent(MainEditorScreenGui); + } + else + MessageBoxOK("Error","Cannot create question script file"); + } + else + { + MessageBoxOK("Error","Cannot create action script file"); + } + } + else + { + MessageBoxOK("Error","Dla and Dlq filenames must be equal, but may be stored in different folders."); + } +} + +function LoadScript(%qScriptName) +{ + $RPGDialog::currentDLQ=%qScriptName; + %aScriptName=strReplace(%qScriptName,".dlq",".dla"); + $RPGDialog::currentDLA=%aScriptName; + if(!isFile(%aScriptName)) + { + %path=%qScriptName; + while(%i<=20) + { + %nextPos=strPos(%path,"/"); + if(%nextPos<0) + { + %aScriptFileName=getSubStr(%path,0,strPos(%path,".dlq"))@".dla"; + %i=21; + } + else + { + %path=getSubStr(%path,%nextPos+1,strLen(%path)); + } + %i++; + } + %aScriptName=$RPGDialogEditorPref::ActionPath@%aScriptFileName; + $RPGDialog::currentDLA=%aScriptName; + if(!isFile(%aScriptName)) + { + MessageBoxOK("Error","Couldn't find "@%aScriptFileName@" on the default dla folder nor on the same directory as the dlq."); + } + } + if(TextScript.getvalue()!$="Current Q. Script:") + { + for(%i=1;%i<=$RPGDialog::Answer[$RPGDialog::CurrentQuestion,0];%i++) + { + (Answer@%i).delete(); + (Action@%i).delete(); + (editAnswer@%i@Button).delete(); + (moveAnswer@%i@UpButton).delete(); + (moveAnswer@%i@DownButton).delete(); + } + } + + deleteVariables("$RPGDialog::*");//delete all obsolete globals and reset the 2 that are needed. + $RPGDialog::currentDLQ=%qScriptName; + $RPGDialog::currentDLA=%aScriptName; + + %file = new FileObject(); + if(isfile(%qScriptName) && %file.openForRead(%qScriptName)) + { + while(!%file.isEOF()) + { + $RPGDialog::Questions++; + + %line=%file.readLine(); + %answerStart=strPos(%line,""); + %question=getSubStr(%line,0,%answerStart); + %soundStart=strPos(%question, "~Sound:"); + if(%soundStart>=0) + { + $RPGDialog::QuestionSound[$RPGDialog::Questions]=getSubStr(%question,%soundStart+7,strLen(%question)); + %question=getSubStr(%question, 0, %soundStart); + } + $RPGDialog::Question[$RPGDialog::Questions]=%question; + + %lineLinks=%line; + %i=1; + while(%i<=$RPGDialogEditorPref::MaxOptions) + { + %QuestionLinkHeaderSize=strlen(""); + %QuestionLinkStart=strpos(%lineLinks,""); + %lineLinks=getSubStr(%lineLinks,%QuestionLinkStart+%QuestionLinkHeaderSize,strlen(%lineLinks)); + %QuestionLinkEnd=strpos(%lineLinks,""); + + if(%QuestionLinkStart<0||%QuestionLinkEnd<0) + { + %i=$RPGDialogEditorPref::MaxOptions+1; + } + else + { + $RPGDialog::QuestionLink[$RPGDialog::Questions,%i]=getSubStr(%lineLinks,0,%QuestionLinkEnd); + $RPGDialog::QuestionLink[$RPGDialog::Questions,0]=%i;//use this to store how many answers are avaible for this question link. + %i++; + } + } + + %i=1; + while(%i<=$RPGDialogEditorPref::MaxOptions) + { + %AnswerHeaderSize=strlen(""); + %AnswerStart=strpos(%line,""); + %line=getSubStr(%line,%AnswerStart+%AnswerHeaderSize,strlen(%line)); + %AnswerEnd=strpos(%line,""); + + if(%AnswerStart<0||%AnswerEnd<0) + { + %i=$RPGDialogEditorPref::MaxOptions+1; + } + else + { + $RPGDialog::Answer[$RPGDialog::Questions,%i]=getSubStr(%line,0,%AnswerEnd); + $RPGDialog::Answer[$RPGDialog::Questions,0]=%i;//use this to store how many answers are avaible for this question. + %i++; + } + } + + } + } + %file.close(); + if(isfile(%aScriptName) && %file.openForRead(%aScriptName)) + { + while(!%file.isEOF()) + { + %Actions++; + %line=%line2=%file.readLine(); + + %i=1; + while(%i<=$RPGDialogEditorPref::MaxOptions) + { + %ActionHeaderSize=strlen(""); + %ActionStart=strpos(%line,""); + %line=getSubStr(%line,%ActionStart+%ActionHeaderSize,strlen(%line)); + %ActionEnd=strpos(%line,"")+5; + + if(%ActionStart<0||%ActionEnd<0) + { + %i=$RPGDialogEditorPref::MaxOptions+1; + } + else + { + $RPGDialog::QuestionLinkAction[%Actions,%i]=getSubStr(%line,0,%ActionEnd); + $RPGDialog::QuestionLinkAction[%Actions,0]=%i;//use this to store how many actions are avaible for this question. + %i++; + } + } + + %i=1; + while(%i<=$RPGDialogEditorPref::MaxOptions) + { + %ActionHeaderSize=strlen("<"@%i@">"); + %ActionStart=strpos(%line2,"<"@%i@">"); + %line2=getSubStr(%line2,%ActionStart+%ActionHeaderSize,strlen(%line2)); + %ActionEnd=strpos(%line2,"")+5; + + if(%ActionStart<0||%ActionEnd<0) + { + %i=$RPGDialogEditorPref::MaxOptions+1; + } + else + { + $RPGDialog::Action[%Actions,%i]=getSubStr(%line2,0,%ActionEnd); + $RPGDialog::Action[%Actions,0]=%i;//use this to store how many actions are avaible for this question. + %i++; + } + } + } + if($RPGDialog::Questions>0) + { + $RPGDialog::CurrentQuestion=1; + TextQuestionNumber.settext("Question: 1/"@$RPGDialog::Questions); + QuestionText.settext($RPGDialog::Question[1]); + } + else + { + $RPGDialog::CurrentQuestion=0; + TextQuestionNumber.settext("Question: 0/0"); + QuestionText.settext(""); + } + TextScript.settext("Current Q. Script: "@$RPGDialog::currentDLQ); + TextScript2.settext("Current A. Script: "@$RPGDialog::currentDLA); + + for(%i=1;%i<=$RPGDialog::Answer[$RPGDialog::CurrentQuestion,0];%i++) + { + OptionsControl.add(new GuiMLTextCtrl(Answer@%i) + { + profile = "GuiMLTextEditProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "2 2"; + extent = "390 40"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + lineSpacing = "2"; + allowColorChars = "1"; + maxChars = "-1"; + }); + + OptionsControl.add(new GuiMLTextCtrl(Action@%i) + { + profile = "GuiMLTextEditProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "400 2"; + extent = "300 14"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + lineSpacing = "2"; + allowColorChars = "1"; + maxChars = "-1"; + }); + + OptionsControl.add(new GuiButtonCtrl(editAnswer@%i@Button) + { + profile = "GuiButtonProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "700 2"; + extent = "54 15"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + text = "Edit A."@%i; + groupNum = "-1"; + buttonType = "PushButton"; + command = "EditAnswer("@%i@");"; + }); + OptionsControl.add(new GuiButtonCtrl(moveAnswer@%i@UpButton) + { + profile = "GuiButtonProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "700 17"; + extent = "21 15"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + text = "Up"; + groupNum = "-1"; + buttonType = "PushButton"; + command = "MoveAnswerUp("@%i@");"; + }); + if(%i==1) + (moveAnswer@%i@UpButton).setvisible(0); + else + (moveAnswer@%i@UpButton).setvisible(1); + OptionsControl.add(new GuiButtonCtrl(moveAnswer@%i@DownButton) + { + profile = "GuiButtonProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "721 17"; + extent = "33 15"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + text = "Down"; + groupNum = "-1"; + buttonType = "PushButton"; + command = "MoveAnswerDown("@%i@");"; + }); + if(%i==$RPGDialog::Answer[$RPGDialog::CurrentQuestion,0]) + (moveAnswer@%i@DownButton).setvisible(0); + else + (moveAnswer@%i@DownButton).setvisible(1); + + (Answer@%i).settext($RPGDialog::Answer[$RPGDialog::CurrentQuestion,%i]); + (Action@%i).settext($RPGDialog::Action[$RPGDialog::CurrentQuestion,%i]); + } + Canvas.setContent(MainEditorScreenGui); + RefreshOptions(); + } + %file.close(); + %file.delete(); +} + +function SaveScript() +{ + %qScriptName=$RPGDialog::currentDLQ; + %aScriptName=$RPGDialog::currentDLA; + + %file = new FileObject(); + if(%file.openForWrite(%qScriptName)) + { + for(%i=1;%i<=$RPGDialog::Questions;%i++) + { + if($RPGDialog::QuestionSound[%i]!$="") + { + %line=$RPGDialog::Question[%i]@"~Sound:"@$RPGDialog::QuestionSound[%i]@""; + } + else + { + %line=$RPGDialog::Question[%i]@""; + } + + for(%f=1;%f<=$RPGDialog::Answer[%i,0];%f++) + { + %line=%line@""@$RPGDialog::Answer[%i,%f]@"
"; + } + %file.writeLine(%line); + } + } + %file.close(); + if(%file.openForWrite(%aScriptName)) + { + for(%i=1;%i<=$RPGDialog::Questions;%i++) + { + %line=""; + for(%f=1;%f<=$RPGDialog::QuestionLinkAction[%i,0];%f++) + { + %line=%line@""@$RPGDialog::QuestionLinkAction[%i,%f]; + } + + for(%f=1;%f<=$RPGDialog::Action[%i,0];%f++) + { + %line=%line@"<"@%f@">"@$RPGDialog::Action[%i,%f]; + } + %file.writeLine(%line); + } + } + %file.close(); + %file.delete(); +} + +function NextQuestion() +{ + if($RPGDialog::CurrentQuestion<$RPGDialog::Questions) + { + $RPGDialog::CurrentQuestion++; + QuestionText.settext($RPGDialog::Question[$RPGDialog::CurrentQuestion]); + TextQuestionNumber.settext("Question: "@$RPGDialog::CurrentQuestion@"/"@$RPGDialog::Questions); + + for(%i=1;%i<=$RPGDialog::Answer[$RPGDialog::CurrentQuestion-1,0];%i++) + { + (Answer@%i).delete(); + (Action@%i).delete(); + (editAnswer@%i@Button).delete(); + (moveAnswer@%i@UpButton).delete(); + (moveAnswer@%i@DownButton).delete(); + } + + for(%i=1;%i<=$RPGDialog::Answer[$RPGDialog::CurrentQuestion,0];%i++) + { + OptionsControl.add(new GuiMLTextCtrl(Answer@%i) + { + profile = "GuiMLTextEditProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "2 2"; + extent = "390 40"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + lineSpacing = "2"; + allowColorChars = "1"; + maxChars = "-1"; + }); + + OptionsControl.add(new GuiMLTextCtrl(Action@%i) + { + profile = "GuiMLTextEditProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "400 2"; + extent = "300 40"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + lineSpacing = "2"; + allowColorChars = "1"; + maxChars = "-1"; + }); + + OptionsControl.add(new GuiButtonCtrl(editAnswer@%i@Button) + { + profile = "GuiButtonProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "700 2"; + extent = "54 15"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + text = "Edit A."@%i; + groupNum = "-1"; + buttonType = "PushButton"; + command = "EditAnswer("@%i@");"; + }); + OptionsControl.add(new GuiButtonCtrl(moveAnswer@%i@UpButton) + { + profile = "GuiButtonProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "700 17"; + extent = "21 15"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + text = "Up"; + groupNum = "-1"; + buttonType = "PushButton"; + command = "MoveAnswerUp("@%i@");"; + }); + if(%i==1) + (moveAnswer@%i@UpButton).setvisible(0); + else + (moveAnswer@%i@UpButton).setvisible(1); + OptionsControl.add(new GuiButtonCtrl(moveAnswer@%i@DownButton) + { + profile = "GuiButtonProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "721 17"; + extent = "33 15"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + text = "Down"; + groupNum = "-1"; + buttonType = "PushButton"; + command = "MoveAnswerDown("@%i@");"; + }); + if(%i==$RPGDialog::Answer[$RPGDialog::CurrentQuestion,0]) + (moveAnswer@%i@DownButton).setvisible(0); + else + (moveAnswer@%i@DownButton).setvisible(1); + + (Answer@%i).settext($RPGDialog::Answer[$RPGDialog::CurrentQuestion,%i]); + (Action@%i).settext($RPGDialog::Action[$RPGDialog::CurrentQuestion,%i]); + } + RefreshOptions(); + } +} + +function PreviousQuestion() +{ + if($RPGDialog::CurrentQuestion>1) + { + $RPGDialog::CurrentQuestion--; + QuestionText.settext($RPGDialog::Question[$RPGDialog::CurrentQuestion]); + TextQuestionNumber.settext("Question: "@$RPGDialog::CurrentQuestion@"/"@$RPGDialog::Questions); + + for(%i=1;%i<=$RPGDialog::Answer[$RPGDialog::CurrentQuestion+1,0];%i++) + { + (Answer@%i).delete(); + (Action@%i).delete(); + (editAnswer@%i@Button).delete(); + (moveAnswer@%i@UpButton).delete(); + (moveAnswer@%i@DownButton).delete(); + } + + for(%i=1;%i<=$RPGDialog::Answer[$RPGDialog::CurrentQuestion,0];%i++) + { + OptionsControl.add(new GuiMLTextCtrl(Answer@%i) + { + profile = "GuiMLTextEditProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "2 2"; + extent = "390 40"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + lineSpacing = "2"; + allowColorChars = "1"; + maxChars = "-1"; + }); + + OptionsControl.add(new GuiMLTextCtrl(Action@%i) + { + profile = "GuiMLTextEditProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "400 2"; + extent = "300 40"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + lineSpacing = "2"; + allowColorChars = "1"; + maxChars = "-1"; + }); + + OptionsControl.add(new GuiButtonCtrl(editAnswer@%i@Button) + { + profile = "GuiButtonProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "700 2"; + extent = "54 15"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + text = "Edit A."@%i; + groupNum = "-1"; + buttonType = "PushButton"; + command = "EditAnswer("@%i@");"; + }); + OptionsControl.add(new GuiButtonCtrl(moveAnswer@%i@UpButton) + { + profile = "GuiButtonProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "700 17"; + extent = "21 15"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + text = "Up"; + groupNum = "-1"; + buttonType = "PushButton"; + command = "MoveAnswerUp("@%i@");"; + }); + if(%i==1) + (moveAnswer@%i@UpButton).setvisible(0); + else + (moveAnswer@%i@UpButton).setvisible(1); + OptionsControl.add(new GuiButtonCtrl(moveAnswer@%i@DownButton) + { + profile = "GuiButtonProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "721 17"; + extent = "33 15"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + text = "Down"; + groupNum = "-1"; + buttonType = "PushButton"; + command = "MoveAnswerDown("@%i@");"; + }); + if(%i==$RPGDialog::Answer[$RPGDialog::CurrentQuestion,0]) + (moveAnswer@%i@DownButton).setvisible(0); + else + (moveAnswer@%i@DownButton).setvisible(1); + + (Answer@%i).settext($RPGDialog::Answer[$RPGDialog::CurrentQuestion,%i]); + (Action@%i).settext($RPGDialog::Action[$RPGDialog::CurrentQuestion,%i]); + } + RefreshOptions(); + } +} + +function GotoQuestion(%Question) +{ + if(%Question<=$RPGDialog::Questions && %Question>0) + { + for(%i=1;%i<=$RPGDialog::Answer[$RPGDialog::CurrentQuestion,0];%i++) + { + if((Answer@%i).extent!$="") + (Answer@%i).delete(); + if((Action@%i).extent!$="") + (Action@%i).delete(); + if((editAnswer@%i@Button).extent!$="") + (editAnswer@%i@Button).delete(); + if((moveAnswer@%i@UpButton).extent!$="") + (moveAnswer@%i@UpButton).delete(); + if((moveAnswer@%i@DownButton).extent!$="") + (moveAnswer@%i@DownButton).delete(); + } + + $RPGDialog::CurrentQuestion=%Question; + QuestionText.settext($RPGDialog::Question[$RPGDialog::CurrentQuestion]); + TextQuestionNumber.settext("Question: "@$RPGDialog::CurrentQuestion@"/"@$RPGDialog::Questions); + + for(%i=1;%i<=$RPGDialog::Answer[$RPGDialog::CurrentQuestion,0];%i++) + { + OptionsControl.add(new GuiMLTextCtrl(Answer@%i) + { + profile = "GuiMLTextEditProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "2 2"; + extent = "390 40"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + lineSpacing = "2"; + allowColorChars = "1"; + maxChars = "-1"; + }); + + OptionsControl.add(new GuiMLTextCtrl(Action@%i) + { + profile = "GuiMLTextEditProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "400 2"; + extent = "300 40"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + lineSpacing = "2"; + allowColorChars = "1"; + maxChars = "-1"; + }); + + OptionsControl.add(new GuiButtonCtrl(editAnswer@%i@Button) + { + profile = "GuiButtonProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "700 2"; + extent = "54 15"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + text = "Edit A."@%i; + groupNum = "-1"; + buttonType = "PushButton"; + command = "EditAnswer("@%i@");"; + }); + OptionsControl.add(new GuiButtonCtrl(moveAnswer@%i@UpButton) + { + profile = "GuiButtonProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "700 17"; + extent = "21 15"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + text = "Up"; + groupNum = "-1"; + buttonType = "PushButton"; + command = "MoveAnswerUp("@%i@");"; + }); + if(%i==1) + (moveAnswer@%i@UpButton).setvisible(0); + else + (moveAnswer@%i@UpButton).setvisible(1); + OptionsControl.add(new GuiButtonCtrl(moveAnswer@%i@DownButton) + { + profile = "GuiButtonProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "721 17"; + extent = "33 15"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + text = "Down"; + groupNum = "-1"; + buttonType = "PushButton"; + command = "MoveAnswerDown("@%i@");"; + }); + if(%i==$RPGDialog::Answer[$RPGDialog::CurrentQuestion,0]) + (moveAnswer@%i@DownButton).setvisible(0); + else + (moveAnswer@%i@DownButton).setvisible(1); + + (Answer@%i).settext($RPGDialog::Answer[$RPGDialog::CurrentQuestion,%i]); + (Action@%i).settext($RPGDialog::Action[$RPGDialog::CurrentQuestion,%i]); + } + RefreshOptions(); + } +} + +function RefreshOptions() +{ + for(%i=1;%i<=$RPGDialog::Answer[$RPGDialog::CurrentQuestion,0];%i++) + { + %ActionText=(Action1).gettext(); + %ActionText=strReplace(%ActionText,"",""); + Action1.settext(%ActionText); + if(%i>1) + { + (Answer@%i).resize(2, + 2+(restWords((Answer@(%i-1)).getPosition()))+42, + firstWord((Answer@%i).getExtent()), + restWords((Answer@%i).getExtent())); + %ActionText=(Action@%i).gettext(); + %ActionText=strReplace(%ActionText,"",""); + (Action@%i).settext(%ActionText); + (Action@%i).resize(400, + restWords((Answer@%i).getPosition()), + firstWord((Action@%i).getExtent()), + restWords((Action@%i).getExtent())); + + (editAnswer@%i@Button).resize(700, + restWords((Answer@%i).getPosition()), + firstWord((editAnswer@%i@Button).getExtent()), + restWords((editAnswer@%i@Button).getExtent())); + + (moveAnswer@%i@UpButton).resize(700, + restWords((Answer@%i).getPosition())+17, + firstWord((moveAnswer@%i@UpButton).getExtent()), + restWords((moveAnswer@%i@UpButton).getExtent())); + + (moveAnswer@%i@DownButton).resize(721, + restWords((Answer@%i).getPosition())+17, + firstWord((moveAnswer@%i@DownButton).getExtent()), + restWords((moveAnswer@%i@DownButton).getExtent())); + } + + OptionsControl.resize(firstWord(OptionsControl.getPosition()), + restWords(OptionsControl.getPosition()), + firstWord(OptionsControl.getExtent()), + restWords((moveAnswer@%i@DownButton).getPosition())+restWords((moveAnswer@%i@DownButton).GetExtent())); + } + (moveAnswer@$RPGDialog::Answer[$RPGDialog::CurrentQuestion,0]@DownButton).setvisible(0); +} + +function setDefaultQuestionPath(%Path) +{ + $RPGDialogEditorPref::QuestionPath=%path; +} + +function setDefaultActionPath(%Path) +{ + $RPGDialogEditorPref::ActionPath=%path; +} + +function savePrefs() +{ + echo("Exporting editor prefs"); + export("$RPGDialogEditorPref::*", "~/prefs.cs", False); +} + +function editQuestion() +{ + if($RPGDialog::Questions>0) + { + QuestionEdit.settext($RPGDialog::Question[$RPGDialog::CurrentQuestion]); + $RPGDialog::NewQuestion=false; + PopulateSoundList($RPGDialog::QuestionSound[$RPGDialog::CurrentQuestion]); + Canvas.setContent(EditQuestionGui); + } +} + +function newQuestion() +{ + QuestionEdit.settext(""); + $RPGDialog::NewQuestion=true; + PopulateSoundList($RPGDialog::QuestionSound[$RPGDialog::CurrentQuestion]); + Canvas.setContent(EditQuestionGui); +} + +function newAnswer() +{ + if($RPGDialog::Questions>0) + { + AnswerEdit.settext(""); + ActionEdit.settext(""); + $RPGDialog::NewAnswer=true; + Canvas.setContent(EditAnswerGui); + } +} + +function confirmQuestionEdit() +{ + if(!$RPGDialog::NewQuestion) + { + $RPGDialog::Question[$RPGDialog::CurrentQuestion]=QuestionEdit.gettext(); + QuestionText.settext($RPGDialog::Question[$RPGDialog::CurrentQuestion]); + + $RPGDialog::QuestionSound[$RPGDialog::CurrentQuestion]=QuestionEditSound.getValue(); + + Canvas.setContent(MainEditorScreenGui); + } + else + { + $RPGDialog::Questions++; + + $RPGDialog::Question[$RPGDialog::Questions]=QuestionEdit.gettext(); + + $RPGDialog::Answer[$RPGDialog::Questions,0]=1; + $RPGDialog::Action[$RPGDialog::Questions,0]=1; + + $RPGDialog::Answer[$RPGDialog::Questions,1]="Continue..."; + $RPGDialog::Action[$RPGDialog::Questions,1]="CloseQuestion()"; + + $RPGDialog::QuestionSound[$RPGDialog::CurrentQuestion]=QuestionEditSound.getValue(); + + GotoQuestion($RPGDialog::Questions); + Canvas.setContent(MainEditorScreenGui); + } + $RPGDialog::NewQuestion=false; +} + +function cancelQuestionEdit() +{ + for(%i=1;%i<=$RPGDialog::QuestionLink[$RPGDialog::Questions+1,0];%i++) + { + $RPGDialog::QuestionLink[$RPGDialog::Questions+1,%i]=""; + $RPGDialog::QuestionLinkAction[$RPGDialog::Questions+1,%i]=""; + } + $RPGDialog::QuestionLink[$RPGDialog::Questions+1,0]=0; + $RPGDialog::QuestionLinkAction[$RPGDialog::Questions+1,0]=0; + $RPGDialog::NewQuestion=false; + Canvas.setContent(MainEditorScreenGui); +} + +function deleteQuestion() +{ + if($RPGDialog::Questions>0) + { + $RPGDialog::Messages=""; + while($RPGDialog::Answer[$RPGDialog::CurrentQuestion,0]!=0) + { + deleteAnswer(1); + } + + for(%i=1;%i<$RPGDialog::CurrentQuestion;%i++) //Process actions that are before the question being deleted and update them as necessary + { + for(%f=1;%f<=$RPGDialog::QuestionLink[%i,0];%f++) + { + $RPGDialog::QuestionLinkAction[%i,%f]=updateAction($RPGDialog::QuestionLinkAction[%i,%f],%i,"Question Link "@%f); + } + + for(%f=1;%f<=$RPGDialog::Answer[%i,0];%f++) + { + $RPGDialog::Action[%i,%f]=updateAction($RPGDialog::Action[%i,%f],%i,"Answer "@%f); + } + } + + for(%i=$RPGDialog::CurrentQuestion;%i<$RPGDialog::Questions;%i++) //Now process the questions, answer and actions that are after the question being deleted, moving them to their new place and updating the actions as necessary. + { + $RPGDialog::Question[%i]=$RPGDialog::Question[%i+1]; + $RPGDialog::QuestionSound[%i]=$RPGDialog::QuestionSound[%i+1]; + $RPGDialog::QuestionLink[%i,0]=$RPGDialog::QuestionLink[%i+1]; + $RPGDialog::QuestionLinkAction[%i,0]=$RPGDialog::QuestionLink[%i+1]; + $RPGDialog::Answer[%i,0]=$RPGDialog::Answer[%i+1,0]; + $RPGDialog::Action[%i,0]=$RPGDialog::Action[%i+1,0]; + + for(%f=1;%f<=$RPGDialog::Answer[%i,0];%f++) + { + $RPGDialog::Answer[%i,%f]=$RPGDialog::Answer[%i+1,%f]; + $RPGDialog::Action[%i,%f]=updateAction($RPGDialog::Action[%i+1,%f],%i,"Answer "@%f); + } + + for(%f=1;%f<=$RPGDialog::QuestionLink[%i,0];%f++) + { + $RPGDialog::QuestionLink[%i,%f]=$RPGDialog::QuestionLink[%i+1,%f]; + $RPGDialog::QuestionLinkAction[%i,%f]=updateAction($RPGDialog::QuestionLinkAction[%i+1,%f],%i,"Question Link "@%f); + } + } + $RPGDialog::Questions--; + + if($RPGDialog::CurrentQuestion>$RPGDialog::Questions) + $RPGDialog::CurrentQuestion--; + + if($RPGDialog::Messages!$="") + MessageBoxOK("Warning",$RPGDialog::Messages); + + GotoQuestion($RPGDialog::CurrentQuestion); + } +} + +function updateAction(%action,%currentQuestion,%currentAnswer) +{ + %command=getSubStr(%action,0,strPos(%action,"(")); + %args=getSubStr(%action,strPos(%action,"(")+1,strLen(%action)); + + %i=1; + while(%i<=1000) //just a max number of args to prevent the program from going into an infinite loop if something goes wrong. + { + if(strPos(%args,",")>=0) + { + %arg[%i]=getSubStr(%args,0,strPos(%args,",")); + %args=getSubStr(%args,strPos(%args,",")+1,strLen(%args)); + } + else + { + %arg[%i]=getSubStr(%args,0,strPos(%args,")")); + %arg[0]=%i; //use arg[0] to store how many args are avaible + %i=1001; + } + %i++; + } + + switch$(%command) + { + case "GotoQuestion": + if(%arg[1]==$RPGDialog::CurrentQuestion) + { + %arg[1]="QUESTION DELETED"; + warn("Question "@%currentQuestion@"/"@%currentAnswer@" needs updating!"); + $RPGDialog::Messages=$RPGDialog::Messages@"Question "@%currentQuestion@"/"@%currentAnswer@" needs updating!\n"; + } + else if(%arg[1]>%currentQuestion) + %arg[1]--; + + case "ChangeStartQuestion": + if(%arg[1]==$RPGDialog::CurrentQuestion) + { + %arg[1]="QUESTION DELETED"; + warn("Question "@%currentQuestion@"/"@%currentAnswer@" needs updating!"); + $RPGDialog::Messages=$RPGDialog::Messages@"Question "@%currentQuestion@"/"@%currentAnswer@" needs updating!\n"; + } + else if(%arg[1]>%currentQuestion) + %arg[1]--; + + case "ChangeStartQuestionAndOpen": + if(%arg[1]==$RPGDialog::CurrentQuestion) + { + %arg[1]="QUESTION DELETED"; + warn("Question "@%currentQuestion@"/"@%currentAnswer@" needs updating!"); + $RPGDialog::Messages=$RPGDialog::Messages@"Question "@%currentQuestion@"/"@%currentAnswer@" needs updating!\n"; + } + else if(%arg[1]>%currentQuestion) + %arg[1]--; + + case "ChangeStartQuestionAndGoto": + if(%arg[1]==$RPGDialog::CurrentQuestion) + { + %arg[1]="QUESTION DELETED"; + warn("Question "@%currentQuestion@"/"@%currentAnswer@" needs updating!"); + $RPGDialog::Messages=$RPGDialog::Messages@"Question "@%currentQuestion@"/"@%currentAnswer@" needs updating!\n"; + } + else if(%arg[1]>%currentQuestion) + %arg[1]--; + + if(%arg[2]==$RPGDialog::CurrentQuestion) + { + %arg[2]="QUESTION DELETED"; + warn("Question "@%currentQuestion@"/"@%currentAnswer@" needs updating!"); + $RPGDialog::Messages=$RPGDialog::Messages@"Question "@%currentQuestion@"/"@%currentAnswer@" needs updating!\n"; + } + else if(%arg[2]>%currentQuestion) + %arg[2]--; + + case "ChangePortraitAndGoto": + if(%arg[2]==$RPGDialog::CurrentQuestion) + { + %arg[2]="QUESTION DELETED"; + warn("Question "@%currentQuestion@"/"@%currentAnswer@" needs updating!"); + $RPGDialog::Messages=$RPGDialog::Messages@"Question "@%currentQuestion@"/"@%currentAnswer@" needs updating!\n"; + } + else if(%arg[2]>%currentQuestion) + %arg[2]--; + } + + if(%arg[0]>0) + { + %args=%arg[1]; + for(%i=2;%i<=%arg[0];%i++) + { + %args=%args@","@%arg[%i]; + } + } + else + %args=""; + + return(%command@"("@%args@")"); +} + +function editAnswer(%answerNumber) +{ + %ActionText=$RPGDialog::Action[$RPGDialog::CurrentQuestion,%answerNumber]; + %ActionText=strReplace(%ActionText,"",""); + AnswerEdit.settext($RPGDialog::Answer[$RPGDialog::CurrentQuestion,%answerNumber]); + ActionEdit.settext(%ActionText); + $RPGDialog::EditAnswerNumber=%answerNumber; + Canvas.setContent(EditAnswerGui); +} + +function moveAnswerUp(%answerNumber) +{ + if(%answerNumber>1 && $RPGDialog::Answer[$RPGDialog::CurrentQuestion,0]>1) + { + %tempAnswer=$RPGDialog::Answer[$RPGDialog::CurrentQuestion,%answerNumber]; + %tempAction=$RPGDialog::Action[$RPGDialog::CurrentQuestion,%answerNumber]; + + $RPGDialog::Answer[$RPGDialog::CurrentQuestion,%answerNumber]=$RPGDialog::Answer[$RPGDialog::CurrentQuestion,%answerNumber-1]; + $RPGDialog::Action[$RPGDialog::CurrentQuestion,%answerNumber]=$RPGDialog::Action[$RPGDialog::CurrentQuestion,%answerNumber-1]; + + $RPGDialog::Answer[$RPGDialog::CurrentQuestion,%answerNumber-1]=%tempAnswer; + $RPGDialog::Action[$RPGDialog::CurrentQuestion,%answerNumber-1]=%tempAction; + + (Answer@%answerNumber).settext($RPGDialog::Answer[$RPGDialog::CurrentQuestion,%answerNumber]); + (Action@%answerNumber).settext($RPGDialog::Action[$RPGDialog::CurrentQuestion,%answerNumber]); + (Answer@%answerNumber-1).settext($RPGDialog::Answer[$RPGDialog::CurrentQuestion,%answerNumber-1]); + (Action@%answerNumber-1).settext($RPGDialog::Action[$RPGDialog::CurrentQuestion,%answerNumber-1]); + RefreshOptions(); + } +} + +function moveAnswerDown(%answerNumber) +{ + if(%answerNumber<$RPGDialog::Answer[$RPGDialog::CurrentQuestion,0] && $RPGDialog::Answer[$RPGDialog::CurrentQuestion,0]>1) + { + %tempAnswer=$RPGDialog::Answer[$RPGDialog::CurrentQuestion,%answerNumber]; + %tempAction=$RPGDialog::Action[$RPGDialog::CurrentQuestion,%answerNumber]; + + $RPGDialog::Answer[$RPGDialog::CurrentQuestion,%answerNumber]=$RPGDialog::Answer[$RPGDialog::CurrentQuestion,%answerNumber+1]; + $RPGDialog::Action[$RPGDialog::CurrentQuestion,%answerNumber]=$RPGDialog::Action[$RPGDialog::CurrentQuestion,%answerNumber+1]; + + $RPGDialog::Answer[$RPGDialog::CurrentQuestion,%answerNumber+1]=%tempAnswer; + $RPGDialog::Action[$RPGDialog::CurrentQuestion,%answerNumber+1]=%tempAction; + + (Answer@%answerNumber).settext($RPGDialog::Answer[$RPGDialog::CurrentQuestion,%answerNumber]); + (Action@%answerNumber).settext($RPGDialog::Action[$RPGDialog::CurrentQuestion,%answerNumber]); + (Answer@%answerNumber+1).settext($RPGDialog::Answer[$RPGDialog::CurrentQuestion,%answerNumber+1]); + (Action@%answerNumber+1).settext($RPGDialog::Action[$RPGDialog::CurrentQuestion,%answerNumber+1]); + RefreshOptions(); + } +} + +function editQuestionLink(%questionLinkNumber) +{ + AnswerEdit.settext($RPGDialog::QuestionLink[$RPGDialog::CurrentQuestion,%questionLinkNumber]); + ActionEdit.settext($RPGDialog::QuestionLinkAction[$RPGDialog::CurrentQuestion,%questionLinkNumber]); + $RPGDialog::EditAnswerNumber="QL"@%questionLinkNumber; + + Canvas.setContent(EditAnswerGui); +} + +function confirmAnswerEdit() +{ + %QuestionLinkCheck=getSubStr($RPGDialog::EditAnswerNumber,0,2); + if(%QuestionLinkCheck$="QL") + { + if(AnswerEdit.gettext()!$="") + { + %QuestionLinkNumber=getSubStr($RPGDialog::EditAnswerNumber,2,strLen($RPGDialog::EditAnswerNumber)); + %questionText=strReplace(QuestionText.gettext(),$RPGDialog::QuestionLink[$RPGDialog::CurrentQuestion,%questionLinkNumber],AnswerEdit.gettext()); + $RPGDialog::QuestionLink[$RPGDialog::CurrentQuestion,%QuestionLinkNumber]=AnswerEdit.gettext(); + %ActionText=ActionEdit.getvalue(); + %ActionText=%ActionText@""; + $RPGDialog::QuestionLinkAction[$RPGDialog::CurrentQuestion,%QuestionLinkNumber]=%ActionText; + $RPGDialog::Question[$RPGDialog::CurrentQuestion]=%questionText; + QuestionText.setText(%questionText); + GotoQuestion($RPGDialog::CurrentQuestion); + Canvas.setContent(MainEditorScreenGui); + } + else //if new value is blank then delete question link + { + MessageBoxYesNo( "Delete Question Link", "Do you really want to delete this question link?", "deleteAnswer("@$RPGDialog::EditAnswerNumber@");", ""); + } + } + else + { + if(!$RPGDialog::NewAnswer) + { + if(AnswerEdit.gettext()!$="") + { + $RPGDialog::Answer[$RPGDialog::CurrentQuestion,$RPGDialog::EditAnswerNumber]=AnswerEdit.gettext(); + %ActionText=ActionEdit.getvalue(); + %ActionText=%ActionText@""; + $RPGDialog::Action[$RPGDialog::CurrentQuestion,$RPGDialog::EditAnswerNumber]=%ActionText; + (Answer@$RPGDialog::EditAnswerNumber).settext($RPGDialog::Answer[$RPGDialog::CurrentQuestion,$RPGDialog::EditAnswerNumber]); + (Action@$RPGDialog::EditAnswerNumber).settext($RPGDialog::Action[$RPGDialog::CurrentQuestion,$RPGDialog::EditAnswerNumber]); + + RefreshOptions(); + Canvas.setContent(MainEditorScreenGui); + } + else //if new value is blank then delete answer + { + MessageBoxYesNo( "Delete Answer", "Do you really want to delete this answer?", "deleteAnswer("@$RPGDialog::EditAnswerNumber@");", ""); + } + } + else + { + $RPGDialog::Answer[$RPGDialog::CurrentQuestion,0]++; + $RPGDialog::Action[$RPGDialog::CurrentQuestion,0]++; + + $RPGDialog::Answer[$RPGDialog::CurrentQuestion,$RPGDialog::Answer[$RPGDialog::CurrentQuestion,0]]=AnswerEdit.gettext(); + $RPGDialog::Action[$RPGDialog::CurrentQuestion,$RPGDialog::Action[$RPGDialog::CurrentQuestion,0]]=ActionEdit.getvalue(); + + $RPGDialog::NewAnswer=false; + + GotoQuestion($RPGDialog::CurrentQuestion); + Canvas.setContent(MainEditorScreenGui); + } + } + $RPGDialog::EditAnswerNumber=0; +} + +function deleteAnswer(%AnswerNumber) +{ + %QuestionLinkCheck=getSubStr(%AnswerNumber,0,2); + if(%QuestionLinkCheck$="QL") + { + %QuestionLinkNumber=getSubStr(%AnswerNumber,2,strLen(%AnswerNumber)); + %QuestionLink=$RPGDialog::Question[$RPGDialog::CurrentQuestion]; + %QuestionLinkStart=strpos(%QuestionLink,""); + %QuestionLink=getSubStr(%QuestionLink,%QuestionLinkStart,strlen(%QuestionLink)); + %QuestionLinkEnd=strpos(%QuestionLink,"")+4; + + %Answer=getSubStr(%QuestionLink,0,%QuestionLinkEnd); + %Question=strReplace($RPGDialog::Question[$RPGDialog::CurrentQuestion],%Answer,""); + + for(%i=%QuestionLinkNumber;%i<=$RPGDialog::QuestionLink[$RPGDialog::CurrentQuestion,0];%i++) + { + $RPGDialog::QuestionLink[$RPGDialog::CurrentQuestion,%i]=$RPGDialog::QuestionLink[$RPGDialog::CurrentQuestion,%i+1]; + $RPGDialog::QuestionLinkAction[$RPGDialog::CurrentQuestion,%i]=$RPGDialog::QuestionLinkAction[$RPGDialog::CurrentQuestion,%i+1]; + %Question=strReplace(%Question,"",""); + } + + $RPGDialog::QuestionLink[$RPGDialog::CurrentQuestion,0]--; + $RPGDialog::QuestionLinkAction[$RPGDialog::CurrentQuestion,0]--; + $RPGDialog::Question[$RPGDialog::CurrentQuestion]=%Question; + } + else + { + for(%i=%answerNumber;%i<$RPGDialog::Answer[$RPGDialog::CurrentQuestion,0];%i++) + { + $RPGDialog::Answer[$RPGDialog::CurrentQuestion,%i]=$RPGDialog::Answer[$RPGDialog::CurrentQuestion,%i+1]; + $RPGDialog::Action[$RPGDialog::CurrentQuestion,%i]=$RPGDialog::Action[$RPGDialog::CurrentQuestion,%i+1]; + } + + (Answer@$RPGDialog::Answer[$RPGDialog::CurrentQuestion,0]).delete(); + (Action@$RPGDialog::Answer[$RPGDialog::CurrentQuestion,0]).delete(); + (editAnswer@$RPGDialog::Answer[$RPGDialog::CurrentQuestion,0]@Button).delete(); + + $RPGDialog::Answer[$RPGDialog::CurrentQuestion,0]--; + $RPGDialog::Action[$RPGDialog::CurrentQuestion,0]--; + } + RefreshOptions(); + Canvas.setContent(MainEditorScreenGui); +} + +function PopulateActionList() +{ + %file = new FileObject(); + if(isfile($RPGDialogEditorPref::MainMod@"/server/scripts/core/RPGDialog.cs") && %file.openForRead($RPGDialogEditorPref::MainMod@"/server/scripts/core/RPGDialog.cs")) + { + while(!%file.isEOF()) + { + %i++; + %line=%file.readLine(); + if(strPos(%line,"//")>=0) + { + ActionList.addrow(%i,getSubStr(%line,14,strLen(%line)),%i); + } + } + } + %file.close(); + %file.delete(); +} + +function PopulateQuestionOptionsList() +{ + QuestionOptionsList.addrow(1,"New Question Link",1); + QuestionOptionsList.addrow(2,"<>",2); + QuestionOptionsList.addrow(3,"<>",3); +} + +function PopulateSoundList(%value) +{ + QuestionEditSound.clear(); + QuestionEditSound.add(%value,1); + QuestionEditSound.setSelected(1); + %file = new FileObject(); + if(isfile($RPGDialogEditorPref::MainMod@"/client/scripts/RPGDialogAudioProfiles.cs") && %file.openForRead($RPGDialogEditorPref::MainMod@"/client/scripts/RPGDialogAudioProfiles.cs")) + { + %i=2; + while(!%file.isEOF()) + { + %line=%file.readLine(); + if(strPos(%line,"new AudioProfile(")>=0) + { + %start=strPos(%line,"(")+1; + %end=strPos(%line,")")-%start; + QuestionEditSound.add(getSubStr(%line,%start,%end),%i); + } + %i++; + } + } + %file.close(); + %file.delete(); +} + + +function ActionList::onSelect(%this) +{ + %text=ActionEdit.getvalue()@%this.getRowTextById(%this.getSelectedID()); + ActionEdit.settext(%text); +} + +function QuestionOptionsList::onSelect(%this) +{ + if(%this.getSelectedID()==1) + { + %text=%this.getRowTextById(%this.getSelectedID()); + if($RPGDialog::NewQuestion) + { + $RPGDialog::QuestionLink[$RPGDialog::Questions+1,0]++; + $RPGDialog::QuestionLinkAction[$RPGDialog::Questions+1,0]++; + $RPGDialog::QuestionLink[$RPGDialog::Questions+1,$RPGDialog::QuestionLink[$RPGDialog::Questions+1,0]]="New Question Link"; + $RPGDialog::QuestionLinkAction[$RPGDialog::Questions+1,$RPGDialog::QuestionLinkAction[$RPGDialog::Questions+1,0]]="CloseDialog()"; + %text=strReplace(%text,"#",$RPGDialog::QuestionLink[$RPGDialog::CurrentQuestion+1,0]); + } + else + { + $RPGDialog::QuestionLink[$RPGDialog::CurrentQuestion,0]++; + $RPGDialog::QuestionLinkAction[$RPGDialog::CurrentQuestion,0]++; + $RPGDialog::QuestionLink[$RPGDialog::CurrentQuestion,$RPGDialog::QuestionLink[$RPGDialog::CurrentQuestion,0]]="New Question Link"; + $RPGDialog::QuestionLinkAction[$RPGDialog::CurrentQuestion,$RPGDialog::QuestionLinkAction[$RPGDialog::CurrentQuestion,0]]="CloseDialog()"; + %text=strReplace(%text,"#",$RPGDialog::QuestionLink[$RPGDialog::CurrentQuestion,0]); + } + QuestionEdit.addtext(%text@" ",true); + return; + } + %text=%this.getRowTextById(%this.getSelectedID()); + QuestionEdit.addtext(%text,true); +} + +function initSetPaths() +{ + MainMod.setValue($RPGDialogEditorPref::mainMod); + QuestionScriptPath.setValue($RPGDialogEditorPref::QuestionPath); + ActionScriptPath.setValue($RPGDialogEditorPref::ActionPath); + PortraitsPath.setValue($RPGDialogEditorPref::PortraitsPath); + Canvas.pushDialog(SetPathsPopup); +} + +function SetPaths() +{ + $RPGDialogEditorPref::mainMod=MainMod.getValue(); + $RPGDialogEditorPref::QuestionPath=QuestionScriptPath.getValue(); + $RPGDialogEditorPref::ActionPath=ActionScriptPath.getValue(); + $RPGDialogEditorPref::PortraitsPath=PortraitsPath.getValue(); + echo("Exporting RPGDialog editor prefs"); + export("$RPGDialogEditorPref::*", "~/RPGDialogEditor/prefs.cs", False); + Canvas.popDialog(SetPathsPopup); +} diff --git a/Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/ingameRPGDialogEditor.cs b/Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/ingameRPGDialogEditor.cs new file mode 100644 index 000000000..a5179c75b --- /dev/null +++ b/Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/ingameRPGDialogEditor.cs @@ -0,0 +1,57 @@ +//----------------------------------------------------------------------------- +// Torque Game Engine +// +// Copyright (c) 2001 GarageGames.Com +// Portions Copyright (c) 2001 by Sierra Online, Inc. +//----------------------------------------------------------------------------- + +function initRPGDialogEditor() +{ + exec("~/scripts/RPGDialogEditor/ui/MainEditorScreenGui.gui"); + exec("~/scripts/RPGDialogEditor/ui/EditQuestionGui.gui"); + exec("~/scripts/RPGDialogEditor/ui/EditAnswerGui.gui"); + exec("~/scripts/RPGDialogEditor/ui/NewScriptPopup.gui"); + exec("~/scripts/RPGDialogEditor/ui/SetPathsPopup.gui"); + exec("~/scripts/RPGDialogEditor/ui/EditorOpeningGui.gui"); + + exec("~/scripts/RPGDialogEditor/defaults.cs"); + exec("~/scripts/RPGDialogEditor/prefs.cs"); + exec("~/scripts/RPGDialogEditor/editorMain.cs"); + + PopulateActionList(); + PopulateQuestionOptionsList(); + GlobalActionMap.bind(keyboard, "f5", toggleRPGDialogEditor); +} + +function openRPGDialogEditor() +{ + $GuiBeforeRPGDialogEditor=Canvas.getContent(); + if(TextScript.getvalue()$="Current Q. Script:") + Canvas.setContent(EditorOpeningGui); + else + Canvas.setContent(MainEditorScreenGui); + Canvas.setCursor("DefaultCursor"); +} + +function closeRPGDialogEditor() +{ + Canvas.setContent($GuiBeforeRPGDialogEditor); + Canvas.setCursor("DefaultCursor"); +} + + +function toggleRPGDialogEditor(%val) +{ + if (%val) + { + if (Canvas.getContent() == MainEditorScreenGui.getId() || + Canvas.getContent() == EditQuestionGui.getId() || + Canvas.getContent() == EditAnswerGui.getId() || + Canvas.getContent() == EditorOpeningGui.getId()) + closeRPGDialogEditor(); + else + openRPGDialogEditor(); + } +} + + diff --git a/Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/main.cs b/Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/main.cs new file mode 100644 index 000000000..902794676 --- /dev/null +++ b/Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/main.cs @@ -0,0 +1,68 @@ +//----------------------------------------------------------------------------- +// Torque Game Engine +// +// Copyright (c) 2001 GarageGames.Com +// Portions Copyright (c) 2001 by Sierra Online, Inc. +//----------------------------------------------------------------------------- + +function initEditor() +{ + exec("~/scripts/RPGDialogEditor/ui/MainEditorScreenGui.gui"); + exec("~/scripts/RPGDialogEditor/ui/EditQuestionGui.gui"); + exec("~/scripts/RPGDialogEditor/ui/EditAnswerGui.gui"); + exec("~/scripts/RPGDialogEditor/ui/NewScriptPopup.gui"); + exec("~/scripts/RPGDialogEditor/ui/SetPathsPopup.gui"); + exec("~/scripts/RPGDialogEditor/ui/EditorOpeningGui.gui"); + + exec("~/scripts/RPGDialogEditor/defaults.cs"); + exec("~/scripts/RPGDialogEditor/prefs.cs"); + exec("~/scripts/RPGDialogEditor/editorMain.cs"); +} + +function startEditor() +{ + // The client mod has already set it's own content, but we'll + // just load something new. + Canvas.setContent(EditorOpeningGui); + Canvas.setCursor("DefaultCursor"); + PopulateActionList(); + PopulateQuestionOptionsList(); +} + + +//----------------------------------------------------------------------------- +// Package overrides to initialize the mod. +// This module currently loads on top of the client mod, but it probably +// doesn't need to. Should look into having disabling the client and +// doing our own canvas init. + +package RPGDialogEditor { + +function onStart() +{ + Parent::onStart(); + echo("\n--------- Initializing MOD: RPGDialogEditor ---------"); + + if (!isObject(Canvas)) { + // If the parent onStart didn't open a canvas, then we're + // probably not running as a mod. We'll have to do the work + // ourselves. + initCanvas("RPGDialog Editor"); + } + initEditor(); + startEditor(); +} + +function onExit() +{ + echo("Exporting RPGDialog editor prefs"); + export("$RPGDialogEditorPref::*", "~/prefs.cs", False); + + if(isEventPending($RPGDialog::RefreshSchedule)) + cancel($RPGDialog::RefreshSchedule); + + Parent::onExit(); +} + +}; // package end. +activatePackage(RPGDialogEditor); diff --git a/Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/prefs.cs b/Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/prefs.cs new file mode 100644 index 000000000..2b24ab4d1 --- /dev/null +++ b/Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/prefs.cs @@ -0,0 +1,5 @@ +$RPGDialogEditorPref::ActionPath = "art/dialogs/dla/"; +$RPGDialogEditorPref::mainMod = "art"; +$RPGDialogEditorPref::MaxOptions = 100; +$RPGDialogEditorPref::PortraitsPath = "art/dialogs/portraits/"; +$RPGDialogEditorPref::QuestionPath = "art/dialogs/dlq/"; diff --git a/Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/ui/EditAnswerGui.gui b/Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/ui/EditAnswerGui.gui new file mode 100644 index 000000000..f407f11bc --- /dev/null +++ b/Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/ui/EditAnswerGui.gui @@ -0,0 +1,131 @@ +new GuiChunkedBitmapCtrl(EditAnswerGui) { + profile = "GuiContentProfile"; + horizSizing = "width"; + vertSizing = "height"; + position = "0 0"; + extent = "640 480"; + minExtent = "8 8"; + visible = "1"; + helpTag = "0"; + bitmap = "./background"; + useVariable = "0"; + tile = "0"; + + new GuiScrollCtrl(AnswerEditScroll) { + profile = "GuiScrollProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "40 50"; + extent = "480 500"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + willFirstRespond = "1"; + hScrollBar = "alwaysOff"; + vScrollBar = "dynamic"; + constantThumbHeight = "0"; + childMargin = "2 2"; + + new GuiMLTextEditCtrl(AnswerEdit) { + profile = "GuiMLTextEditProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "0 2"; + extent = "450 500"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + lineSpacing = "2"; + allowColorChars = "1"; + maxChars = "-1"; + }; + }; + + new GuiTextEditCtrl(ActionEdit) { + profile = "GuiTextEditProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "40 20"; + extent = "711 18"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + lineSpacing = "2"; + allowColorChars = "0"; + maxChars = "-1"; + }; + + new GuiButtonCtrl(AnswerEditConfirmButton) { + profile = "GuiButtonProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "523 530"; + extent = "73 18"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + text = "OK"; + groupNum = "-1"; + buttonType = "PushButton"; + command = "confirmAnswerEdit();"; + }; + new GuiButtonCtrl(AnswerEditCancelButton) { + profile = "GuiButtonProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "598 530"; + extent = "73 18"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + text = "Cancel"; + groupNum = "-1"; + buttonType = "PushButton"; + command = "Canvas.setContent(MainEditorScreenGui);"; + }; + new GuiButtonCtrl(AnswerEditDeleteButton) { + profile = "GuiButtonProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "673 530"; + extent = "73 18"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + text = "Delete"; + groupNum = "-1"; + buttonType = "PushButton"; + command = "MessageBoxYesNo( \"Delete Answer\", \"Do you really want to delete this answer?\", \"deleteAnswer(\"@$RPGDialog::EditAnswerNumber@\");\", \"\");"; + }; + new GuiScrollCtrl(ActionListScroll) { + profile = "GuiScrollProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "521 50"; + extent = "230 476"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + willFirstRespond = "1"; + hScrollBar = "dynamic"; + vScrollBar = "dynamic"; + constantThumbHeight = "0"; + childMargin = "2 2"; + + new GuiTextListCtrl(ActionList) { + profile = "GuiTextListProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "0 0"; + extent = "196 401"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + enumerate = "0"; + resizeCell = "1"; + columns = "0"; + fitParentWidth = "0"; + clipColumnText = "0"; + }; + }; +}; diff --git a/Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/ui/EditQuestionGui.gui b/Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/ui/EditQuestionGui.gui new file mode 100644 index 000000000..5b333050a --- /dev/null +++ b/Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/ui/EditQuestionGui.gui @@ -0,0 +1,161 @@ +new GuiChunkedBitmapCtrl(EditQuestionGui) { + profile = "GuiContentProfile"; + horizSizing = "width"; + vertSizing = "height"; + position = "0 0"; + extent = "640 480"; + minExtent = "8 8"; + visible = "1"; + helpTag = "0"; + bitmap = "./background"; + useVariable = "0"; + tile = "0"; + + new GuiScrollCtrl(QuestionEditScroll) { + profile = "GuiScrollProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "40 50"; + extent = "480 500"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + willFirstRespond = "1"; + hScrollBar = "alwaysOff"; + vScrollBar = "dynamic"; + constantThumbHeight = "0"; + childMargin = "2 2"; + + new GuiMLTextEditCtrl(QuestionEdit) { + profile = "GuiMLTextEditProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "0 2"; + extent = "450 500"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + lineSpacing = "2"; + allowColorChars = "1"; + maxChars = "-1"; + }; + }; + new GuiButtonCtrl(QuestionEditConfirmButton) { + profile = "GuiButtonProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "523 530"; + extent = "73 18"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + text = "OK"; + groupNum = "-1"; + buttonType = "PushButton"; + command = "confirmQuestionEdit();"; + }; + new GuiButtonCtrl(QuestionEditCancelButton) { + profile = "GuiButtonProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "598 530"; + extent = "73 18"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + text = "Cancel"; + groupNum = "-1"; + buttonType = "PushButton"; + command = "cancelQuestionEdit();"; + }; + new GuiButtonCtrl(QuestionEditClearButton) { + profile = "GuiButtonProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "673 530"; + extent = "73 18"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + text = "Clear"; + groupNum = "-1"; + buttonType = "PushButton"; + command = "QuestionEdit.settext(\"\");QuestionEditSound.setValue(\"\");"; + }; + new GuiScrollCtrl(QuestionOptionsScroll) { + profile = "GuiScrollProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "521 83"; + extent = "230 443"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + willFirstRespond = "1"; + hScrollBar = "dynamic"; + vScrollBar = "dynamic"; + constantThumbHeight = "0"; + childMargin = "2 2"; + + new GuiTextListCtrl(QuestionOptionsList) { + profile = "GuiTextListProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "0 0"; + extent = "196 401"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + enumerate = "0"; + resizeCell = "1"; + columns = "0"; + fitParentWidth = "0"; + clipColumnText = "0"; + }; + }; + new GuiTextCtrl() { + profile = "GuiTextProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "524 46"; + extent = "50 18"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + text = "Sound Profile:"; + maxLength = "255"; + }; + new GuiPopUpMenuCtrl(QuestionEditSound) { + profile = "GuiPopUpMenuProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "521 62"; + extent = "135 18"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + maxLength = "255"; + historySize = "0"; + password = "0"; + tabComplete = "0"; + sinkAllKeyEvents = "0"; + maxPopupHeight = "500"; + }; + + new GuiButtonCtrl(QuestionEditRemoveSound) { + profile = "GuiButtonProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "660 62"; + extent = "90 18"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + text = "Remove Sound"; + groupNum = "-1"; + buttonType = "PushButton"; + command = "QuestionEditSound.setValue(\"\");"; + }; + + +}; diff --git a/Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/ui/EditorOpeningGui.gui b/Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/ui/EditorOpeningGui.gui new file mode 100644 index 000000000..961a92000 --- /dev/null +++ b/Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/ui/EditorOpeningGui.gui @@ -0,0 +1,108 @@ +//--- OBJECT WRITE BEGIN --- +new GuiChunkedBitmapCtrl(EditorOpeningGui) { + profile = "GuiContentProfile"; + horizSizing = "width"; + vertSizing = "height"; + position = "0 0"; + extent = "640 480"; + minExtent = "8 8"; + visible = "1"; + bitmap = "./background"; + useVariable = "0"; + tile = "0"; + helpTag = "0"; + + new GuiBitmapCtrl() { + profile = "GuiDefaultProfile"; + horizSizing = "center"; + vertSizing = "bottom"; + position = "78 10"; + extent = "484 160"; + minExtent = "8 2"; + visible = "1"; + bitmap = "./title"; + wrap = "0"; + helpTag = "0"; + }; + new GuiBitmapCtrl() { + profile = "GuiDefaultProfile"; + horizSizing = "center"; + vertSizing = "center"; + position = "248 147"; + extent = "143 186"; + minExtent = "8 2"; + visible = "1"; + bitmap = "./box"; + wrap = "0"; + helpTag = "0"; + + new GuiButtonCtrl(NewScriptButton) { + profile = "GuiButtonProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "36 47"; + extent = "73 18"; + minExtent = "8 2"; + visible = "1"; + command = "initNewScript();"; + text = "New Script"; + groupNum = "-1"; + buttonType = "PushButton"; + helpTag = "0"; + }; + new GuiButtonCtrl(LoadScriptButton) { + profile = "GuiButtonProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "36 66"; + extent = "73 18"; + minExtent = "8 2"; + visible = "1"; + command = "getLoadFilename(\"*.dlq\", LoadScript);"; + text = "Load Script..."; + groupNum = "-1"; + buttonType = "PushButton"; + helpTag = "0"; + }; + new GuiButtonCtrl(SetPathsButton) { + profile = "GuiButtonProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "36 85"; + extent = "73 18"; + minExtent = "8 2"; + visible = "1"; + command = "initSetPaths();"; + text = "Set Paths..."; + groupNum = "-1"; + buttonType = "PushButton"; + helpTag = "0"; + }; + new GuiButtonCtrl(QuitButton) { + profile = "GuiButtonProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "36 117"; + extent = "73 18"; + minExtent = "8 2"; + visible = "1"; + command = "MessageBoxYesNo( \"Quit Editor\", \"Do you really want to quit the editor?\", \"if($GuiBeforeRPGDialogEditor==0)quit();else closeRPGDialogEditor();\", \"\");"; + text = "Quit"; + groupNum = "-1"; + buttonType = "PushButton"; + helpTag = "0"; + }; + new GuiTextCtrl(Version) { + profile = "GuiTextProfile"; + horizSizing = "center"; + vertSizing = "bottom"; + position = "58 18"; + extent = "26 18"; + minExtent = "8 2"; + visible = "1"; + text = "V.1.3"; + maxLength = "255"; + }; + }; +}; +//--- OBJECT WRITE END --- diff --git a/Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/ui/MainEditorScreenGui.gui b/Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/ui/MainEditorScreenGui.gui new file mode 100644 index 000000000..9f8d900b0 --- /dev/null +++ b/Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/ui/MainEditorScreenGui.gui @@ -0,0 +1,265 @@ +//--- OBJECT WRITE BEGIN --- +new GuiChunkedBitmapCtrl(MainEditorScreenGui) { + profile = "GuiContentProfile"; + horizSizing = "width"; + vertSizing = "height"; + position = "0 0"; + extent = "640 480"; + minExtent = "8 8"; + visible = "1"; + helpTag = "0"; + bitmap = "./background"; + useVariable = "0"; + tile = "0"; + + new GuiTextCtrl(TextScript) { + profile = "GuiTextProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "162 21"; + extent = "73 18"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + text = "Current Q. Script:"; + maxLength = "255"; + }; + + new GuiTextCtrl(TextScript2) { + profile = "GuiTextProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "162 33"; + extent = "73 18"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + text = "Current A. Script:"; + maxLength = "255"; + }; + + new GuiTextCtrl(TextQuestionNumber) { + profile = "GuiTextProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "162 208"; + extent = "46 18"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + text = "Question: 0/0"; + maxLength = "255"; + }; + new GuiButtonCtrl(NewScriptButton) { + profile = "GuiButtonProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "85 52"; + extent = "73 18"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + text = "New Script"; + groupNum = "-1"; + buttonType = "PushButton"; + command = "initNewScript();"; + }; + new GuiButtonCtrl(LoadScriptButton) { + profile = "GuiButtonProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "85 71"; + extent = "73 18"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + text = "Load Script..."; + groupNum = "-1"; + buttonType = "PushButton"; + command = "getLoadFilename(\"*.dlq\", LoadScript);"; + }; + new GuiButtonCtrl(NextQuestionButton) { + profile = "GuiButtonProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "610 212"; + extent = "29 16"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + text = "Next"; + groupNum = "-1"; + buttonType = "PushButton"; + command = "NextQuestion();"; + }; + new GuiButtonCtrl(PreviousQuestionButton) { + profile = "GuiButtonProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "579 212"; + extent = "29 16"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + text = "Prev."; + groupNum = "-1"; + buttonType = "PushButton"; + command = "PreviousQuestion();"; + }; + + new GuiScrollCtrl(QuestionScroll) { + profile = "GuiScrollProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "160 50"; + extent = "480 160"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + willFirstRespond = "1"; + hScrollBar = "alwaysOff"; + vScrollBar = "dynamic"; + constantThumbHeight = "0"; + childMargin = "4 2"; + + new GuiMLTextCtrl(QuestionText) { + profile = "GuiMLTextEditProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "4 2"; + extent = "478 116"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + lineSpacing = "2"; + allowColorChars = "1"; + maxChars = "-1"; + }; + }; + new GuiScrollCtrl(OptionsScroll) { + profile = "GuiScrollProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "10 250"; + extent = "780 300"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + willFirstRespond = "1"; + hScrollBar = "alwaysOff"; + vScrollBar = "alwaysOn"; + constantThumbHeight = "0"; + childMargin = "2 2"; + + new GuiControl(OptionsControl) { + profile = "GuiDefaultProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "4 2"; + extent = "770 290"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + }; + }; + new GuiButtonCtrl(editQuestionButton) { + profile = "GuiButtonProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "642 123"; + extent = "73 18"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + text = "Edit Question"; + groupNum = "-1"; + buttonType = "PushButton"; + command = "EditQuestion();"; + }; + new GuiButtonCtrl(newQuestionButton) { + profile = "GuiButtonProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "642 51"; + extent = "73 18"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + text = "New Question"; + groupNum = "-1"; + buttonType = "PushButton"; + command = "newQuestion();"; + }; + new GuiButtonCtrl(newAnswerButton) { + profile = "GuiButtonProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "715 230"; + extent = "73 18"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + text = "New Answer"; + groupNum = "-1"; + buttonType = "PushButton"; + command = "newAnswer();"; + }; + new GuiButtonCtrl(DeleteQuestionButton) { + profile = "GuiButtonProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "642 76"; + extent = "73 18"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + text = "Del. Question"; + groupNum = "-1"; + buttonType = "PushButton"; + command = "if($RPGDialog::Questions>0) MessageBoxYesNo( \"Delete Question\", \"Do you really want to delete this question?\", \"deleteQuestion();\", \"\");"; + }; + new GuiButtonCtrl(QuitButton) { + profile = "GuiButtonProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "85 192"; + extent = "73 18"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + text = "Quit"; + groupNum = "-1"; + buttonType = "PushButton"; + command = "MessageBoxYesNo( \"Quit Editor\", \"Do you really want to quit the editor?\", \"if($GuiBeforeRPGDialogEditor==0)quit();else closeRPGDialogEditor();\", \"\");"; + }; + new GuiButtonCtrl(SaveScriptButton) { + profile = "GuiButtonProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "85 103"; + extent = "73 18"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + text = "Save Script"; + groupNum = "-1"; + buttonType = "PushButton"; + command = "SaveScript();"; + }; + new GuiButtonCtrl(SaveScriptAsButton) { + profile = "GuiButtonProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "85 122"; + extent = "73 18"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + text = "Save As..."; + groupNum = "-1"; + buttonType = "PushButton"; + command = "InitSaveAsPhase1();"; + }; + +}; +//--- OBJECT WRITE END --- diff --git a/Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/ui/NewScriptPopup.gui b/Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/ui/NewScriptPopup.gui new file mode 100644 index 000000000..37b269141 --- /dev/null +++ b/Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/ui/NewScriptPopup.gui @@ -0,0 +1,115 @@ +//--- OBJECT WRITE BEGIN --- +new GuiControl(NewScriptPopup) { + profile = "GuiDefaultProfile"; + horizSizing = "center"; + vertSizing = "center"; + position = "0 0"; + extent = "640 480"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + + new GuiWindowCtrl() { + profile = "GuiWindowProfile"; + horizSizing = "center"; + vertSizing = "center"; + position = "220 146"; + extent = "200 188"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + text = "New Dialog Script"; + maxLength = "255"; + resizeWidth = "1"; + resizeHeight = "1"; + canMove = "0"; + canClose = "0"; + canMinimize = "0"; + canMaximize = "0"; + minSize = "50 50"; + + new GuiTextCtrl() { + profile = "GuiTextProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "20 28"; + extent = "50 18"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + text = "Question Script:"; + maxLength = "255"; + }; + new GuiTextEditCtrl(NewScriptQuestion) { + profile = "GuiTextEditProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "20 44"; + extent = "160 18"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + maxLength = "255"; + historySize = "0"; + password = "0"; + tabComplete = "0"; + sinkAllKeyEvents = "0"; + }; + new GuiTextCtrl() { + profile = "GuiTextProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "20 68"; + extent = "30 18"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + text = "Action Script:"; + maxLength = "255"; + }; + new GuiTextEditCtrl(NewScriptAction) { + profile = "GuiTextEditProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "20 84"; + extent = "160 18"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + maxLength = "255"; + historySize = "0"; + password = "0"; + tabComplete = "0"; + sinkAllKeyEvents = "0"; + }; + new GuiButtonCtrl() { + profile = "GuiButtonProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "56 156"; + extent = "40 16"; + minExtent = "8 2"; + visible = "1"; + command = "NewScript();"; + helpTag = "0"; + text = "Create"; + groupNum = "-1"; + buttonType = "PushButton"; + }; + new GuiButtonCtrl() { + profile = "GuiButtonProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "104 156"; + extent = "40 16"; + minExtent = "8 2"; + visible = "1"; + command = "Canvas.popDialog(NewScriptPopup);"; + helpTag = "0"; + text = "Cancel"; + groupNum = "-1"; + buttonType = "PushButton"; + }; + }; +}; +//--- OBJECT WRITE END --- diff --git a/Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/ui/SetPathsPopup.gui b/Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/ui/SetPathsPopup.gui new file mode 100644 index 000000000..549bc6a8e --- /dev/null +++ b/Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/ui/SetPathsPopup.gui @@ -0,0 +1,169 @@ +//--- OBJECT WRITE BEGIN --- +new GuiControl(SetPathsPopup) { + profile = "GuiDefaultProfile"; + horizSizing = "center"; + vertSizing = "center"; + position = "0 0"; + extent = "640 480"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + + new GuiWindowCtrl() { + profile = "GuiWindowProfile"; + horizSizing = "center"; + vertSizing = "center"; + position = "220 146"; + extent = "200 228"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + text = "Paths"; + maxLength = "255"; + resizeWidth = "1"; + resizeHeight = "1"; + canMove = "0"; + canClose = "0"; + canMinimize = "0"; + canMaximize = "0"; + minSize = "50 50"; + + new GuiTextCtrl() { + profile = "GuiTextProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "20 24"; + extent = "67 18"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + text = "Main Mod Folder:"; + maxLength = "255"; + }; + new GuiTextEditCtrl(MainMod) { + profile = "GuiTextEditProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "20 40"; + extent = "160 18"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + maxLength = "255"; + historySize = "0"; + password = "0"; + tabComplete = "0"; + sinkAllKeyEvents = "0"; + }; + new GuiTextCtrl() { + profile = "GuiTextProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "20 64"; + extent = "101 18"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + text = "Question Script Path:"; + maxLength = "255"; + }; + new GuiTextEditCtrl(QuestionScriptPath) { + profile = "GuiTextEditProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "20 80"; + extent = "160 18"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + maxLength = "255"; + historySize = "0"; + password = "0"; + tabComplete = "0"; + sinkAllKeyEvents = "0"; + }; + new GuiTextCtrl() { + profile = "GuiDefaultProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "20 104"; + extent = "89 18"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + text = "Action Script Path:"; + maxLength = "255"; + }; + new GuiTextEditCtrl(ActionScriptPath) { + profile = "GuiTextEditProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "20 120"; + extent = "160 18"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + maxLength = "255"; + historySize = "0"; + password = "0"; + tabComplete = "0"; + sinkAllKeyEvents = "0"; + }; + new GuiTextCtrl() { + profile = "GuiTextProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "20 144"; + extent = "67 18"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + text = "Portraits Path:"; + maxLength = "255"; + }; + new GuiTextEditCtrl(PortraitsPath) { + profile = "GuiTextEditProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "20 160"; + extent = "160 18"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + maxLength = "255"; + historySize = "0"; + password = "0"; + tabComplete = "0"; + sinkAllKeyEvents = "0"; + }; + new GuiButtonCtrl() { + profile = "GuiButtonProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "56 192"; + extent = "40 16"; + minExtent = "8 2"; + visible = "1"; + command = "SetPaths();"; + helpTag = "0"; + text = "Set"; + groupNum = "-1"; + buttonType = "PushButton"; + }; + new GuiButtonCtrl() { + profile = "GuiButtonProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "104 192"; + extent = "40 16"; + minExtent = "8 2"; + visible = "1"; + command = "Canvas.popDialog(SetPathsPopup);"; + helpTag = "0"; + text = "Cancel"; + groupNum = "-1"; + buttonType = "PushButton"; + }; + }; +}; +//--- OBJECT WRITE END --- diff --git a/Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/ui/background.jpg b/Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/ui/background.jpg new file mode 100644 index 0000000000000000000000000000000000000000..ca263137c25280364594542b283182d07abc1d84 GIT binary patch literal 152215 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

&P*cD!zkh~?9->Rvl09a1^x_#)7q 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

admwKC$hAMCJ@HcRXBnH*zT-{9x$) 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 ${W`~hwDqy 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 NgkdhyHNvo;|JkNs#ykK3 literal 0 HcmV?d00001 diff --git a/Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/ui/box.png b/Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/ui/box.png new file mode 100644 index 0000000000000000000000000000000000000000..d358d77abfe34063c97e6f2de24809b0adf3a234 GIT binary patch literal 6836 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 literal 0 HcmV?d00001 diff --git a/Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/ui/title.png b/Templates/Modules/RPGDialog/Scripts/RPGDialogEditor/ui/title.png new file mode 100644 index 0000000000000000000000000000000000000000..0947ba52f48e15370f04a014f37807b850eff0d8 GIT binary patch literal 85872 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 z z#?Wa68Y_fFyQ2y521zEA8d#L|yw!N*?YYKykh~wVWhcYXj&prvUeR8m?UMnuL9_lE zYQ@{iP1A;`jtX&Jt1Fu%ndoAAQGGWvKy{;-&b2*B6lx?@=44lUny?Om_tQ zRWR)xSinAB{7(|l%LW6%1t~enP;{%zx^*I^ko3GL1^fHLiJw$o(*lGIIkhX8WT)QP zw}w9Pk4B|5JMus*Sc+rtr8p`_pufPO>z2_ClPNafC`oo`trWUyOBn4QQl7}csgl=Pgh1!g)f90E-#M(Hn&(}a5aoIT5MY;nryIkpUYt95iz!?CE)o?LLfbA z$~;DlhJDoSav0Ns`CCWrq?5_#TZz#9!%ofYyT7kif~f~v|6trjULPeQ;gZ3`ch>-6 zf>dJk9PQQn?eWNLc742P>7TJ`^#-H$w?&ESEJ~okX2+zis(fpM*M6~bMXKO3WteA)bax8~)LCfN;l`TfYYWURvx~jCKBHYJ)=77yQhPRg<+nVzYTz z6QcVr1L2-8!F<`9{HE&Ns5{ahaUK)q5B+aZG=b)LVP-22tZ|l$0GAfCART5%*Gb3H z8yUa!IGO9P`xdljy@5A)pT3nuvf(fkC)XdKIEU;AS(q0(9v|R!+Rr)Ri8znbqkk$! zN!CC*RqK=c>ox#QsuU$~vFP@jGO3E}M!=g*=%4yvqfv?QoN zfBYc^^`jPPm@Hsk2=hBQ`qg&8%eoHPekdF1cb+a5{7{}_0}&%9H`%I`l?Guh@z)_1 zi`K*q2%@R2otPf zPiL?-lAX#;tH1{`z##i?mGheT=d4q@D9stGS0s2j)_vPiSpM&kZkv&CrklO9__>k= zpH2&e=bwg3LU~(h&}@!1T)EWJ!SQmrtIHJO&S^j`sN5pWEQGjHi&w5^L6*C76>^9t@ml znOfb&r@K>}r1rUBT^+>COy9n8#RdJ08Ump|8}aKJQTjBn%S121EF;~Au@fd&#xv-n zj$$Ud`R^i*g8N?B%QJ`kQi@H#^4*EZ&Oe7{8JOjNJLeJ+rWCjkLwV+XkIu?9XRPFn z&ZWz(D=(UWHOZd)4r8gF=lh;7L9a7@iOZ>$B)c$cLL&a)#RM~Wv3#(l|0K@@fI*N7 zw&1Cqy`Lzw`28N-+0~~W?X!}Jo05c#a_SLLlFfI4;yoU=NbiUI$}#=}6Gun*o(x&V zERdzpz|=a>#s!97Ktx<1_H(PmRgfk&*OsL^@5w)CQ$=}AQK{B_qhuqJUsJuE*RYWe ziUH)h!YqG<(OStRy~w83UlzWwDZyV?=s~B9^ zzE$G%t9xbt$-5r!dE@=@slBC`B=%qkp-&DrrPQmd>qQs1U3a(tPW;~cW2)loW0kW# zk8EkRj8_=2CQM~!qN-H-W=Tm9jS=#^@O-ea1PA3@NiwzzY@E~a$@r#-LarZCXy z{IL9!Kh+$%bM8?GikT_5=oR4v?-XEWsZ1MsR(B|`c>7@iSFaTAehSOd%8_euA5RHp zBEVePuVs+Gj_&(RMRx>wO9Ipl5}^T=8mmkn=`V+19VIx+%){=bNWxgajn%C2VPa&MPFAh6_`)7%q zbj8-^ptaKX@6nLDD2!jA!_C_pP;C}X4yKf7qHzy-qvR$Gy(1ZZkco{h{j)lz!H*UN8jlA$p9zo4}> z$0oMgiZTZS0ep)1Wc3gBN{vzHGuS7fkUuE2De4>|0#7~P8~qU@L8ZA{1zGV*+von? z!6M!6*1wSW%Yjdi42hKoT~mu~zu`c5MlH3J(YpD8iFRi(zphNT1R9o0>HzFuDE zx6O3~i%YHs${%ClSPf3^TB!liO#_11uu!@ zH;@Jwbkl{QH7=0HBAJ78)B2reT4;dxML$h9$Y}x+9>$^$&)(r7)Xej0|WVu``ognvRo47!yVI>0^Vbt~kY_OKy;1Aa9&%VWMA% zui!M;`FZ?O5w(IM=C{nvSRFGG(iTncc3msix2y_(K3buyDV_498nPuGx)qkI*CZ`A zRXfSzURCsXydABt?i1u3k+?^0AH($phrU-K>h%ItUKf{$_g#Pg9^HC{Z)RDwq5)&^ zgBSL}xBWMMhcZM4sKu>{z|Hfpe}j=i^?``XVV8N%sK*%f`D&IfU93gCT^Zj@NYWP8 z@L@EMNekXgIDpn1ib?U9Cm{EnXL?~F&d1iPa%H@G6t>LXvPoQ_!#0|(XtjEq!@cpV z_3hR43nEviP0OTrT+9TXA>kIpzQ;mDb=OArfe8Jzxdsz+i~rzo@50*v=|U#hRO4@E zOL`Fwil>P%JKRXVpFpZ5;aJ1PX{)t7^FfEV_aRa*EO{JzzCA8;4uJbk2>o6Rud<{} z$jh1N>=*Jos`5Xejf;7=mCF}9;J8#vJydTvS8p)KgC{j7GIn$Y6?(Ai)G(wsXDF`p zpmtT{TK6L8;w^|Ea?&RehPJ-%iSIypx}2jSdq#>GA0kc5wJMT}nc3?rKffSoR-bEf zmuDRX3pgrtR3p&2`a*JZeoI$yQ>D>os_S)@{o7o_26b1MZvU}*QP}@6`eC9FJ1a|Z z%Y!1dLNh0Y9#*8mJjmo}*fH+OKF0^em#W~4=TdsR%;)K1sBkVa^iE0iBPfr>+~0f2 zlkwAvfD-;$Rwya)$ad$jyBTf79rU-FW?hi3mJ))dX-=HX4Lcpzt2@Uw+yPd;%`$4JHYU7;iS+RhXLIi_at|nWmg$v1@wgki!eoCfz>A^Ww)6z=K~1 z58goK-wlC(mYYd8khNFd;}5QH`@g7I;bNmzQZUiXM(T|ylu}sL#^piLga79R=pPt9 z)sLMs4*t<~I%s;f>TeAjrZf2E%3s6MO$x2fh$!d6i;p%9iz#RX^`Q;bUEKu=;D?#J z!q<;*ZTAIrwY~<=PWE5UrTsJhHslAuGsE%Q}N-ev#`kQ@~qhX-UcsEPUbT6wHUi1LIlze>7cXSX5oK z9(q7Z1Ze~b>2he05|ox0VrY;ULK>t~RJu#L8w7?Es161avOe*+QKEC%*G6C#rS24GLz8YED;M`c zH3p~$W{#$H(bL3M)~QQ+2Cym{iv#}Xk>}?0bo&@&yvf1Tv!n>LFQc}gX?#|Q1v4&g$>Tyjb`uI2cr=51^i~{ice3p- zwHZDsaM2MZYE3%Nw}CmE1>DD(L_a|gH;c?vQ3P_o;#pqZ)ZLfZG|!>8{=*|bOOE;I z$f$b$<`=Eg+MgdBWHALz#;Z|CWzq#@B`C`X(Fy(~%Mf75L(D!D6v%5P+9n=~UaRBx zjwV4xH;a&iHS$x(D7&&;MK8Ff_?mr7cfa@;&XoN?Z7*KFa?*b@>A-H1(k(IbQS4X9 zy!vL5-b|wuXNV(DMnxF6qH%+l=evxG+JXstXCE5jYMsx29rBCiHOj5?)*ZwNPzCm` z^yl{)YL>6+_h5e<6m$0|rXfmbpNQyk!5w*9bMT5S#&T=MR+Tr65#HgG0m4$OmVMDR z?v|HXJFBgb_DG3)^WpLqQoTZ3*;9ohD1MHdf}kIQ!%!Vwc7U<( zNH^Pw^;v#~g;s$ZKwt0jaG4l8xnt%orUr$g#^k0uh-Wk|(SpAiQ>C-!4TC$XeU?>F z{HSS^Yk=MZ<2|&0p7NwrBTuW`4|}c2%FTg?y6hJojYb=}es`sE3j9rch~!MLun3il z*&vP6RHxf84Hig!wnW%`ZZLA;>MA?Hz!D-jym}kXJxhj{5w3ZG>!VuP^Y^_owRFNb zs}h_>X3p`QVVV-tfD_$kbWlmRD}OKy!R-yR#XorQu78@$Cnmw3hmPS`bmmOanj7*x z!c?>bPQgb0@{BP7k!$W<&YTxTjMFc_8(XxWp-=2X_OcT9nRXZPY4egoc}}P0cKc-l zRui(e{%Lr5Ffy`W&gLcHWXO||d;!uBEmFB1FwhWtp>xNTND=^4RzVzvjU7Q9bq{-O z-G|G^M?nXwYU|FKZ!3%WyUYKm#5|Am&&MMT!`ekLm*QptC0!S zb0NXTFb27F^?n?XQKRzLimlgD+*Wds$XBB-v=|!=+A;akrpRt{V;zAve6=W z93LxsSWaYoH_8_c?r1;-ASn_D)jwPJ`GK0J2=@zltQ%tKf z4sE)g@|n@&7}ran{g0i#*KO}&&$8S0i~o>43$j90*UBpsLsGtzh%IGRVv%vy-@9}f zBZ+vgK*pBRmM9`34NM-j4Rv)qIH)2*8DbAQ)tt@-#AeQ}wGur&>U?RkQ;x}T4yj|J z1>QmJH2B_B=;gDs;Nqd7tc8Vr@*Gu_XQ(qS`s&H~<<9!*DY6XRUl(7)-wTKaMV0NP z0GAx@gtF*%*maPAqArMAD3RZE&@60DYo06P(!en^{{qEGG%ZVatXNa9gcSu$XP??g zJBOtE7l?KB2a8}h1gNN(>gshz)V$g@cBze$5vXKh**2r@r zDHIOt)u-(CO1@gW5hT(?5sc*DHyByOLro--V*RSu+f0ph0{?ln<>d7cUboXR=bo=* zLC&5aw1J^(SLHJjaMFu{#GP1QueK4!t7euThvez#Ug#$DDNeLg8?8wx^T7sDd(33{Hx&nfXL&#sGz;`{`j-D^O89{LNhlW~P z5qy=hIW#9;%WwWJw`uWHD%`WEvC~j+%l0(25t_+8YsBaK7<5L5azj zOlBu;d^hzB5r{r9x+)rx(6=(=?b-n@`v9=-4|5I$BK z{Rm6T;M#VkFds0ZGSlJ7iA!_h99|js=WO}o=?~#pS$jQ+E6pZ0f;j;Z4KjKQeouC7 zzU<)49R`cIl>hx2TT*f2W7gj1sfCPkcg(%!4Ed%r^-<~aKvr5z9IKpLL6(kDY@+}g z%DQ^o-XU`$mjqp?3CC|N9Ek~@`ZOc22ihoz@7`MctG33kSBn!H_g>Gr5*?DvWO|b< zAK)xr?*lI`n;ba()$qqc{R9Fgj<7jr3ZNr1rWLoI zlP@jGjtu?QAH#3=Q8ho7G*-~(-?=lt=lS;Q+mpzntu)pnr;(%LpE}?=?D)nIKFA0W z03#xH_1JLF==}9vO8$x8ciMdx5y@c(r=ptbd6$v~wbDQBRy@98$@?t1GDdqWKQPYL z^Bd^wYpbJf!P35#A|h__j&%vo(Jj=C6Bx0&`!8mfV4Y-HE=UXkd=rvb3HSkJnz_b? zyBO+E9s@)7>PLWFR+mqfXIXzs9EIGNMe(CmKIh8SNvqMq+nE@}{u+Uj)5S!tol9Gb#Q4(9v+zY(lqzBn36&SnQSL#H_qC7+WP{%F?@>81W!$(^t zZ-_u~(38^P6Z;n+nM&K~un?Ue{oIejkyCU6QaZ&do%&2+;zz9ce3_MM^qg<>|=`Xft?ky^jVV;p);V zOP4LHN5@Cc?EHZyS680Dy@rOa35xZK})uD*^*BnBl0n(ClFbQfp z^oX*KOv5)6cb+K3H^?)$CHEw%S1J>8Hu28IkGP=zj&{>lJKaRA3blidDY$>_cOj!N zLOL>TSztE3j`|jy@|(i>Mv-&t*YD=ZPAHB9Bqppmy4w0lmlbh{BvfN7g2VJjc{n9& zO|iptV*4DAx5qx)A1(En@M6afpRHw_8HJ&M=z~7}3aiDSlNud6D!Y=j?wiA#5zkrE z1ktu#A}qfCI(ggO)zfse_qzdE=XSv?&yg2b0RLRLH=khERQHX_>%k=ZKwLNrmijl! zEb)uVo{<;hPient4l)dvKL$Kwg>pPG6WvxCAC9C+tRCEo zGrb5b<2z!Um?M&=s}v6Jl2PR-4nd%lxj5Xp4@+Wzj!y@Uj>R7)d=m_tYM;Xr+>KLi zS-Pik#xk$|6y;C`OYZs&!qBS&hE#n&f)D9}ZX1q$=L^c_zuuJ{aQr1|c5&zGz-Yf3f#8 znpX2snli-xI4*09oppt=ad@GxBskwWQ)SgM4IF=EN(7fz9!BJ(tILl=Dw_l}sf@t= z3vlyviWbnBnk;^x3$h=nc7K?PL&qpaXjl_mAim|i{x|_1cL~6imTpu|M~|;<5zZ$j zZsg=}oVPbt%pG*@qBMUKFv0Lo| z)^{sI68?35C+!HtvUuq1l#4Qh>`JI-ScLB#{>aFu3A{woPM$Xhsii*a64FY2wr!93 z4(gvbF!?I-u4Q#}IZka+0(_X?aJQIadcbC}m0XKU|0A|){Ud`!Z%?3oXnW?HjrzoF z7QTRPRunyE+V^5~4d{~^{rX8y)u=kZ8)41GeT3*5Lv?96jsiZ$R}9tI%Zg$y7%|HWz66n|BNirQqZ*JkeGfW=Pk zo^CRpey5CR0cX~5(vRl>@q4eW$o^JzxgKM^bC9xki#s!=41WkhJr@ z4RxWWW>-Mdr%yx$@5*=odfQu7y!69NA8M+mYb$nzn>(@q`v=DUdd~fMYinR_&7=Xw z9wQSoDwhzy6?OtQWl0jntB0|CRa|+GgH4r#`C8fU_`Yss)z4;;3kp*ZLS>-46UCRVHI)w|Cx=$@xovSQj8SRc5=j zQNLGgFLo{YOyiA|CMxrvpQDiTmi)vwITW6IO3Q!XqS?O+H!v!D2-gkmt%VId!<2(b zk-enN3#eKf%3|?fnTNDrDUzLYY-0cf<;yTx{ICz4$E*Xsr~L#Y%kEpVU$2iB#Ka8& z9XT=$2we*~u2D7t+JlNklPjJ&NJ1J+zAAq)6U;KSK=I|?>dZ?{C^5vTCM2=`~(JKH@ub zXd@o?Sw|Da{h`+4oZ4w&n?(P7?yS-@JTI{=y-)93V?>RRs(YBw&UeuwxC_6EM^vQLK|FtHwf2DmMGtj4JTnmJ?wx>+1E17p+lSIkC3G>z3MY1;n5~mF3*AUt^#orePpg zek3&(Wa}KoFimB{Ao=qVk>S5|HT(3K*zpEe$B@F{t`!^06SK`*Oz~Tkqj2~s1B-k& znH?V#Pa3fAzyn(?4sDMvhMByd_7^1bB>_NJHq}59>L@7eLOpRvx$cl+_l0w6Y3avH z4E=aBzB1N#&pJQ*sw43i-GwJ3m@t))H4U<7rBubmfx;A#JkabBBf1<9ZHuSm-O z=j`}sb!}+i8%IN<90Ig?A1_fQ^J*wra36!*Y3=S2FXPFflkI_w#$o`2epGM z2yE#{G~&w>^ZxK97Y12E+fAYczI%k{dVlm>sjim=`@Jr!ID&m6;5^_H+EN4e?Sk?h z{SdO=*sp9G-|HlF{90Bb?}6$%m<0K`!Pv7mZ!AH8&jlv$pKMkGq#y|dsZT|1R?r4p zx0#!frEuf6j6=!})*rJ2r~pxxtwjk4(!-#NZpq_ zz>C0(+v2D%A}*W)NU;Q!LUGe${>WcB)N!kFajzayhaP+}Hb;UIisJHFrZf&zM47Dx z6_|&UGiB6d$JoVvh!aA)LWa!QTz%dZ#L8(a7N`=*?68K!=%i}_r_@<+=5trN|Bl{Y z2ing*faBA3X{;I_lV}`~>v^(_bM0G?(pCB$<5lZ4mF277QQd|rEhYS*LOv^~?V!*Uw}L#;n= zDbBuOh|Gq+D@+_GrRq^giJpk=lUDWTDex@h?DRdj2%B!G z>N70mWg&aAn!H?I+@Jc*Sz3ui4n7vik9f)X5xCM?`9%($v}FM+T=Nq$APMg7Ai_Kz z{P!QRZF$e+u(niEC#R&EG;?}HlY_ceS0N1m+u-gYOmNmb_*{yF?jtM#h|#jjQ5}JC znu?FW?+4$S`P^+DSj+o!<^@>FWU*tEY7#S<<3yD03D|ib;CF8iIw)4pIAtxnC9fy# z0|IkCOqDq~uz;8Yay%2DrtB!I)7w}rs!6=vC^qF{RO#X@t0Zq8jY{JP)p)u|^5PZM zS;rw;#z`8+NeMt83xH&nKpR;@c-a;B*Yy-Bz&_JO5hcUM3sIFC7$9f7E51rKypyS) zgWX1*h*Hx|2wrC`Ue1gYcHUHM7`=9a>P0`>)#}D)&Vq?3jzqcWe3{g(nw}(kAyQ1x z%Hm@5j=Sd3iczc@EIA>MnhX;q+-OBRAfIpltHSrt38=eI>tI9#(?DlupO6V@=Hs`K7 zu|y-qf#+G?V|X8=)U$hNi4ooZh@5-L-q>^C``(?$P7>)@U!UCR^qwk0`!Bm3j%Gr9 zA#3-yC{(Kx;wiE`+GV%%vNC^f`zT^hPs)zzugt)CK3-$h{Pd2rJ)}`oIL->&C-My? zU%@xRFbJN4{+mDC;Jw~8pUIoK+BF;fj!{_HzC2}x+~f1DRPJsEC{Ij2MloxCP?X}t zhCDqYmi!MWL?9LtA5=BY*Yo?w9&GlCdjAezJAsa+%;(T#7u&V=3l&==H1Wl&4CjV> z79$;jeXDRkV@tvw_XfT0ovtoNS7(TjA?G?HU9JQenqL&SuKn5R?eBpYcd~V*iOF?~ z^s%nTr3+oNE(aY)ZAL~0I0l)85e0?du)Y1k{E#ka`!D38{fb%ytQS5m4|vN(R9bc` z?)dp8&2>Q4I`4t8@GC&qDG1;cE)CHEX10*3koD$| z>M8MN@d=EfWb4Lgs$45-lAAmMm{QCBvgALF!wS_{U*V6+&&a7vSQV;36nm>SRs>rQ z1oPp@{2lj*xg*c+&qVJM&iPM6aX_=c7&ACBLP})%w?BqNsuv1%&|;Z_o%(Oh@zZ_n zbSdkH;4O3arbMZ?S^qGY;U<>RVU$Y;Tp3BqIXQiwg)k)8KtFy-q_(dI-ej;G%^Oyx zOs=Xy=zeJSvoWJ-PN5_dE*#@R+L=qNkfOr_F+6mCq45ZnPBAO!k|=1l_u2jasw$!Z z?4;erI2wZ{1p+z@0QWC_0gWuY?DM*vUn{6c-Td%j!h}}`2ytNx&1NkLiBAnxlka;j zMP62*&)cX5{<&CpN*|2n(pzT$4aT+7Cdi+V5r?Ora*Eq$%TyEVWv@x6fGKoQClh-Nr&Dd!z>D$ zKHEuE_|#qT_1l7G-vy-~&v0?bmW(QA4zpO=$a-k)?u3hyaKz8h?8)a+1{GU2_}_gd zkGN*TDWyf^T3VWUghw2KJ4J_AwEqz$H_gEU4L<3SCJAy?Pw&%wM%(e9a3ErBc~wQ^ zwdrKoQ4&Q`a6li!;D5rFrla)XH?j6|@Oa}ea;Zq^e~H!8QjVM?rhHQwPJL&oYQq?L zHG`l}-3{CLMLnNhK;C_HD82ZTCog%}kd(r-vqOP7c^=Kil$l8d5(?fD(j*jACKQY? zBX8WA1KP04XT7$^TWOR;MT;?wa(x6n8NT<`ic!=25=}#^T@R^Ky$5aivb-F=pM21# z!GA=V%scOpR2KZ9|Wfj^}66W8yeMTc!3ftzbX+s9gDw2g~YwBPv)(U7_Sb~a(jBJ zA-J&&av?Rv#TwvbCr&_Ph@DAB_nyC!1>k`Iv+Z{s%|q_)-?n=*xYC~NM&9@a)?a?a zRZ*Rf%G1|>0DrlRL7m>F5Ih`p)DIPmknvgue8bW)#ILZ$8rBpoXoJ}0qdSv8ONuBp z>X1eN*b4)WOS3*RC{OPh(RdA^yD}RKbXEAg)fTyIh13Co!e+MAV(gtO>!@)t-+Bt- z0`RtfJVS#l{988jgA9`K9SFBtudM<04>mSfH`8)u*oC8`&-=Q`r}qMk6%)=YAIxJQ z#qskcszf&#X$c8d=V-4N&94D7VTFm;auWePC*NGpZmGqU_i2@xiEC)047(5^lXKq= z_HFINEo63B=r;5wdWlU_eIE7<3sW-h$3DEDx3=1(cfms&i<6&d4$Fq54{65cw{sQ*_gm@6nX60L zU#&-@1YVCIKf;8d75N#2-VB0dG8=jBLD?@bLD~Y##~uzh`td zpxn3JCwmp*_wJYK*7I*sfgozs#UC$l+)aOs-Le*{aC7>yvTh8BeAif?{^OGNsdF@j ziHs`+CkhQTXwC*k)hejblPh92MOB5(J^0i#@KAU$hT-&9;l$+c>XtFHCt&Cy4~|mu zeZmR7a6ntZSs%cXCk|Bm;29F!Nt6UYOgVg$&AhEcoTpx&>YMOt{FR5|eC3NU*i=%& z=`!XTK_fmkh=fj1OFpl0nA1kLO`q*MU14!bvVm^Ce=QHi)!l>p%3XO|gOGg=Gas|r zXJI_?ZO@RyRZ!wCz$hFq9{DJ>UayrI3F10R9e*FhqyNUE7Gxv|=EUyMamvt4yUSZ) z8JP0MF{~F76)o&j`4!68s3WqX(M~Z{+l@{mO8PVBd#LC@NENd@EP=#K(HZTupzOO1 zTiycXx$EzD&5TA~J2J?<_^CbdwDHc)(EVe3qO|m3AkIuQt0u*flhl4^cY+$JQxWR3 zTy3{FZ+3TQYR7%N4(U1VY@4>Il`02iYRHrLzadR1x=@UT9NUZCLWyxL;d>9Q*1-A0 zN98fSX};X+6jB}b`ug8Dmye_;65wD`^`((e3eK2eo&2Q);MtqPIu5RuN?bJ^uyuwhZZ=gO{jD-;Ni_Gqzb=9Y8Ha`D<0$?@Yd}a# ztFaCy_2NlyH7YxUh`AGN^_E{PC2{Rb607!xrbMS~k^mEK{#&j}TRWAB1QD_vrLeKT z4yDlQLhBGd$w6u5^)ZDRwcotofJlc86BmLMK;g3y_s6fzz#WXs{9Ahf)>GHo8fQo(t=-Y_)I*cAL&jn-z^>0K30YC zJieV`B`p58OR*-WRbGBeK68`o%W@G|UbamLswEH9J$m<9q=ckQ2`$JbX^Nsg0zX|H zc*w(3)92`%x8ciQhwpA@+ExtOTJ>=;TeTVGr`An~Cbujuer!?!n=KgM zvs3ldPf4|wK3A2m#`)9xR+f_94iMNg^gTfGzND+S6bn9L+*PW;3eZ4g-=k0RxWf>d z3X~{*ON6faAHLfQ^;MM`;l*@@WD^4<&`X)3C^aUj-fw0v?XFPwYLAi$%R*9+YS_SQ z94pkN`^)o}h{)VasY+|)<{ZL$Jui;;sapKb^m3|V>7TyBw6d9vgqV392BPhLs88|k z^ae7%R==d4IzT}A{cZ}c7sO|S=l6NSlq3yQbNR;m`k1Qq>0!Ad-P_f0t`-hU7}Jus zz4f_0%(Q!&9~>}_kBizu*yxHyel%X+y!1EI7oCJunWc0WsacJ&Z%4{Ck)m{K69qKD zcjE{bG`$9xXwNd9N3F_3uLr;>bsi%apuh4(|1Mt|(4=ikPfUW=aRf=DNN}^0q{#46 z!@~{4ztvo4cc-|21}{!*mpP?pcE(G;AZyr`wEq#ekYA!Bkz$ir3RWOOt!Oz+`gHC}pC z;+pdC#2hBuCRBe}D>apbuCVbCK*%OUYOGWBlkk*^Q~&2Un=J(j$o}e(?>h16lmM}O zla@G0DNq}~4g~Gk{7#Aeoxb{*%FZywK%cC}TE*e9>~vu0^j}6WWPX{bsx-h%BdaBC zaqO$;(LW*TIL2o|gynnl-A9jy3g_Yv1#Luae}!!WPnbaaLz|9oVN-vz;!q{wEW;yP#B?=M;7#zD+m-9WSK;aav(FNe*0zA-5lu{(=JIf9 zp-mF3^EJJtlrbOXH=PuFj{%H~7^T~!=7+uP^k zT~4mrMX=mfU35kCwy?p)!N3ro1c?VB&6VRFE`Sy?+1BT)fAknBe-1^!omYInSqE z7{z_n(`46kbM!af=*7HP!M9*ea}xK}IV2Vwmio54mhg`$l7CA?r1RW!`Ht!7e?QJM z8-sh zTQzw;Avk=-(Dzopgv#fJT>bpYo(kcWk+R^{wV)#@;_csHZ27I+8u$)ElcwHh`QaC{ z?2T&TmVpoRe`>H_QmXZb3l@E}#nuMA$+5gTuB;m*Ao0aTx`7ENr|ntc&pH@VAA3)6 z5{yyKWR{ngXmDA|YC%Q=4uhd-X{v%07+t>ik-kh#Q~yS^OE`pz2|!4Yz1To+;&P+b zevQGo8f&E@>KFQ(P$MXNB2RdB9Fv@6b!ldpgJwdIpqV7;317f#xA0t5%%Iwy@%yEa#@=4Bj#Dd9iBlD#grCMm+aN@&znHra3Z z4%=?0n!JSZoaE;MoE)-#E`W^t#AtZiAe#f9$b9< z+JsKyPeA&(x7Oo-G>*skpJqoT{S$XwgrJzSHg_gN=|MBN<42UowB`(-88W}dR{cKK z_f+Y|?&;v^SUc+MDt#9FS8T#w4ZLnua&-;fxI7R$$atKvvwpfYd@`NXQP_|-^TGqAqxfwt zw?_J|Z?KOi7~7T<5c`=K?E2h&fhjT>3uW}k0Ir^du{fu>gOU(}`h+)Ki->4ITdpU= z%Xw8~)iXud?Z-aQzUX~BZ~cVTm_leE=@FzBGDFd|$dd-UO65UG7k~t|%eJKVe3#A` zHdls0**O)aDd;rPBo@ko=RNC}HQu|?P)9d?==qjtZYI5?y4Zsl#u}aYz|J-0J2~ZY zG5Icv@259&P-=s+i{Lg=dgQIOX+)}|q;*zq^|R3C>-+G)7BLkGnPfF&ApAZcfGX|{3Qbki4m1M zO;wXc@gtGx8yS9?N2o?5wW-#x9;8`8rH6EX2W#+|MpuM6ew-l6uO@cJqXgS7iOo83 zn<~Y$ZxcPa%i@ef&bWZtWB|~S27|)2x^d<`6 zneVaxx~g1JDAw#Tgv0_BAZCfw_+K9rp_9_qgL-%nwDw^Dw4(%eAi(Euv7YIkvwPem z9XRrRy3$1*6Sm}^GDPTg!*!~@#aWq0-Rmz4T-r1-a>y~W;p=E##n|m19iCf^X{KMf za?8d78rf6eUu*+0*H-wTQh%|=c#Kv@G4rbwLe%QK+h=oR3SgA5XHi4|fN^V2rtRrz z+EdHnYf8WEdthxC^>qB|F=ftw;j8zjsf-66baP;8?G{Aw!(eu;Y5Q)mMY=hwzZ;cr zHettV{CjZaT4ToGcCDikpZkmmtbZf?1oXH)V;ui~^ay5d`vkWKK_Y#={| zMWH!9H!&Y2G3sAIXoia!hjkiG+p>m%SWtU0wwy~ahuOi%kPsHj^XpdAFj;?{ghA@? zfF+|90-uMOj6gf@J%yKgmq@vSwQW9<9uCm;+5^_ctNZhdscVxMNH#eYxQL+9XC!EB zH2ADqDNEJ;C>utwVz* zTe5jp@It&=aiwi+Q@IR?);6l-Rk1TYfY&q0ec!OM1rOex@aDscxc% zq2@DfZcr5wp)3XnWY0MWxoEZDsuehHHu*5KDh5iDXL%9!TpGN}Bt&T+0VvFRNew;U ziVMDzs|khUgv#hsSBF%D!y30n-#|I6Uv;9GL$DGT-RsErIHfFeGF>JNA)}0>7ek!P z-^U6q4h|zk_1^>nI$ywe+Kq+vYwc#st_DkcZti$*S7ibcLI{JB{4yTI7m#&5oNY8E zLx)WpCO|7gSU`@=C-rUL2pd~}k10^~#Lbk4D~(h)4GvYQ>yr)1I;HG6{GxTj1Mz>0 z@(|Hm()6~48fcPrueZi-O+;%mymN zl~w@Ep2J-Yw&PeiS#J&49RcUH66#MAoN356PfhW!Cvy*59D4yTWuUKvJ`vXE6FS0( z&8(2-b5!+TL!ie>)m0ItG=Vw zQ>$iASDH>{tvp(4 zNpQKQF;gF^RSUP3`H-iPyk%^KM5vE*rnO}42DQ0)PUyT(Q7&vqf6oT`M(97nU6i;{!Gq&ik8b68=E=U*LfoWQG`PPmd z8XsVufjtTd*n98Yc_!-VM`*Lqh!|)+jTZp`znTfkij@a-lHx!w)i4M4ycGN4NP*z< zrOjFI-+YU5;}oa*>`vTDc#73-2Zu_7dIF__q((ppB0MG0%z3AA8p;Nn)X7nP18+tF zjp!@Z*gb8>Z>)I5OjZ?;V1?5ji&jUAxNPk7m4wE|>hLGCS92?_iE_ov(`HYP)v`;c zrw-nviFjh0di9fuZ;1N1SPV2q|7#H`O@1B`OH|Cn{FaG!fIOKiE$t*2(a=^P{_2|H zN{oaqNQkywC)h)d_29#Ye_w^!YRr;=$DEn2S@=_r+ZLWXqu(^++Mz>xP$qq~y@FaaXT)&W<+@88cYfBkxR$t$-@GiiDpf`eL6 z%$kl(M-S4D2(~msrl`jz9M7Y2!&J4|ZB6amYW@kDa|UhX7wrZ5FIU?-q4J?M@-=h* z8nGc=D{RQGb#wG1Y*dG$j+X{|>5hLK_>vpfet0-ak8bw~b}(1V(!Fj_*&;TmsBX9Q zQ@x(*$SM}~0^&KJX444r`=+)_ynfw-<*9237=~1;i>* z;Vq0YYV*NaSI+t(bm&|{q{;cw|~x@};Cj(D4=ZG9n|PvS{O)?!mqwsd@57{Qe`1<)9` z;`JeDY0G)H?*4Ss(YMFXDSvFzC1W&QRLY}G7pa;6-E;r;5~BVd3i=>kF7_BeUL)EHrx#A>h>K=qZ`Ccpx`&G`263)i7R-E~|9ORC}+heCx&L z1~IDe0BR+A_ZQkkBh|=ERf(Y>1O6j2&c5V^I9`6|cNco5$los9&Q+H~;hMz5T+HN= zt{>{YbXWV}S0A3!gSA?X=uzXv+6P<-7^Bc=TTc z5f*2iRF!6Acz2FpT?u$5m_?AUH#I7cmz8BLAd!UBYs9S~VSE;8u8g#lLmomBU~1wx z$zQXReZm1%#i3}!82g72UQ)e3cv|-wH4$y%K!U3PuarH~F>}a$)Z-~%XSG{LmFkt>{+P!cu)dWOijQJ1S1T@M!w*6Nj^aP)ePhZh~A^r48U|+ zK`YJbjO)td6MIbIM`EwrE^;#dV!bJF`J?_OoG;)l#e8MUKmV=2J8WFyKSqW(-D4r$ zVLxkPAyt68YqUO2EdePz1O z%zgFT(Q$Z8H#Ia7MPdT-T4aW#X5(9z+7o{__o&N`XE}Gj+RhbC+`5Z+cHbrrEHq}p zcf`$Q@kNv8aBY@?(hS0XF9q9gD?b@O^HcE8lpC5Sk-W*QIHJAAX|Vgfgy=t39gu_^ z*no$LNv&Uc1n+5Y*!8Fht|=+G7oAc}6qQRt8^^cQ^>}?bbYgdObfT}%)Z#r zH+5=6{?d9}fwCPa%!z7wBpK%6Vfnk+In@wC6ZiC%y*pQo%ysT@v^?4~y_3fLpLc5g z^h)%_a*pnJ;l-oB&t`7LuJYOifGh7Op#1;JVNd8_+AR|VaQPTN-InRHbu_f+7u~d^ z3rK^<=QA+Ksfo>-aW5*U(tbQ(5v+IEBmmr(G#N=$E>!*bPX)KPOw-sNk{qUPZp2}- z9qEKs4CwSD)pBh|h$x3K^hH;(eST{Z%W3RG20q!?$|FtOh1j>djD2P%frO~?)}+Ny z#hL@9<-?0+F&0L_h@C5sFZ*}OQ)4O0DeoU}LCPX`NoanSFMxbjAT~G=+NDw)BJNyz zLqJfD*CxY4Px68=7$Yv;k2#;#8iOl!bLlbd7i9-x(Mo0Fnnr57CVEZjxfE3F;B;2; z9t5gQ%(_I(ESuEfM@o4L4`hD9(#RzCGqvWX5U#8~=tSrTwp?^SiMRubb`dfCzoA{M zgS-@~u(F4F-8EwcQK&p)TvceXi2;;nxoXMjaH09(j*I{^CAeeM+T3}LmM?4y*QT?u zB?G&|PxsX&qRZM=2dCI|+-YC7vrW=`AVyjzvs>I$ zvE4>hvWC?NkxeM;jQ1)&Pg^V2LG8~N_G_I(To3=ZU@z-~b2XlG0$j0sLqRU>7-A?H z)4vwaH~Xy4rYRmj2{)vA-%o5*Aw(F^f%LAB0Ll7n5ZFFlXx(6h2CLPjV7bl+Voy7i ziCS|jK#}FE1c#Eyd<&L-)l|+m3aN5)G=J=~%JY3Qz^2Wv0H()rSkO}kJktVI!9<{} zMmwhf!v1GXGtWwa-D;k}S$qTr0p)Lx_0T;0@gh2XJe}xo4bPg1+?7lI@fOjD3VIit zvK?gikQK-m$w5y(1Tjg5E;D1QUL|NSzll=9Ex?kT2%k@fu$boI267c82uSeAh?_H;HKH!0p!Y&|H+l}fsqriYXMuPg5xxe z3;z9Sy&2-_Fj}cV`^!4r>h1dFQBD<19|F(0#_)5{HJ4*%4ix0fQo?~HY1w1@fnsWc zcBnd44BVPmGmpXrYLsTizGSHUG|=ot2XW(}_}c}*DW<;C-zi8JJXxfuC2YmrwW{M` z8ZhO-a+O@`t)Yl65>~z1gxoK^-)v*sI%$8>%d2{>D z^edSxuV7nYaO_+^4n2;lMrRC%NS*$SJVLY>#>zj$n#ARJy&Adrc;Ssayef@;bv?4z zXvUmrhsyrA#h#NHhr<_cq(38@8p}mZgM6Yl{Tk~q%=hQTT;-w_ISjjo=+nmjlf}`H z2S;D|+uw+*h?Bp`he_*0{hy<|vU^|VB{0`eR;HLJ)Ef6%qJ0rq@WTUhuLwK^`V?ju zp@sXLgyLRzEk2B*;_A{gPQGURt(*ICy1lr+|759oEB)p#)$gr??>__uPA7*-2TKPj z3akCvTatT4Eqc;h5z_{DcPmSQUKYREX-la;aS|H^Win%w{vlerF&ovFL36X%K18R! z`{-Zh6arCfXAWo2EB!L+;71rsv!D1>vi0&Qfu}qscg3uaOw{K>_54nfO6Eqx+S~Al z<(2)iaIW*UTW;y_hnytTt@zIBR_Jp#OahhrBmIVjhs*eZuVZ*dOFM;cd-#i{X`iDG zlFf0+JMt+H9*?nzlc|{cHn7r_3iT?mqJ;TpnszRI!74Y{=?vc!6Qcnb%=Ji>v-Nd2 zf5vxJDpI;U(bBYT)OSVF6%#eN@;jC6b4Annv1XG8uHrQYO^=ADSr<1h7h!((g!pQC z>wbkINTJ${*`14-2{ohiLzC@ud+I98FG0XE-Zj;~eV@BOzVKha#Vs2f{PIq^Xr$ow z9QwW&06f^_?-#Q-?1klx_$$<8-BsO-WjOuR=7inQm_u-MzZJ%%2&bW9dK1LNb&MhW zV>g$MkdWp&ZHAq`KFGr=!7_`k48Ao#TbKh}hk-t5$xVODZCb-Ie@$k{3I9{U%g*|k zdrDl_8A=>g;?8R{( z;}c>sp?o*rK)s>63z4C$cw53RwWk}D1NR8Guh^EBthMgiYPE%*$Sq0$67s+3{+mdj z^DnWFfr;8Dxwj9>LKz>Pn|gi5U2sVqLsl#|o9;eu zcjcihzAb2YCPsOAY5y6z&>&0cCpzO3BVWP%3|O8lql%)asv&ivr|}anjF3$2Br&H^ zfp8LI*U)RnR~EI+{L@=(LLBttM%U zrKtoC9)K0jz@?0N5&FpPF9;M()43Dd*}0R|+o{&T%B#qx$NSDH)^Gq%Opar{y{xnQ zy~?fa$T=+f=B6*NbLmw#wyst)ujWwG?jTHpSp9Az+D#0+zgKRGLPt@fNoz*puKCRf z^)yx5z@B*kC+OEYeW;NHi1zs;)j(xAOA(6|T_2U(=!?p_l9lm1PAVGowgl2gf_`33 z#I$n3x@6n3Q0nl*Q;3tZAVp6lEMC*#l)6k&%y&-%t{)n`g*u)psm@Xwj}oZZ73#-A zW=hLdPwiZIFfED%L$e9NKs{rKNWUuAJG@{Yxa~Cf2)BB7 zI`rD{{do%&Q(PR$^JCuvmZ(-WqnfZdyWmxsYzZYY@UK@w*l}Xsg^hAac@zJKH86PLX`t$j(YeFSZ z9aDK3MkFzIon*Z#k+YTi%$F6vqdB8FGW@HvuLUD>D!!|@u^KOiq24)}&;J73lHq0H zs`AMdRzYDX?L6Jix$iyUFcQ@+>~9Rl?eD#V15xzqPBl{SvTmvUeutnTSY;|67wuQ1 z3#7{#R2zLggpn<7cFm$`IshFT#v*+^Q;am-ewyj=+8H9(voBqeK_X9&$A5}R% z&D0u=US+NeEWcfri)oes_dPuL?=`y8GVU_5eBl+Z9OSttAi3*4HotYhn_U75Ffeh?{pHrM%m{kY|dhS=U`=GZKqabUIb zSCBD(w3_Px(S`Su&vEyR-NPF&-uEGfh>7lJ@q}+EfRa`jL3FsVxo{%8r2|F;h!{(L zzsPQEeLZtuY3}U>Bq-W6$qVr9a=xVV<3?qPziB4zc(KV_wB-nV)O_-iO^5#CT}Aiu z`i+K{mQBUJMg0C&rsjMZTy#~?D9>Sd>G{n?y(|+!=IaOhG^-cn=VF4h&sO^5X>jix zP6fpOhpD#=i>mwLhKKG@iJ?=Z6i`4qM!FdqNrw>W?hX|ORJwcUknWZt1{eWpDN%+_ zX@U3L|Lc9O=lQ}X=FFab_TFplwSI9`c`OimCD`L>PnDPR)UeV(6y+&es~5kopC7Q_ zq;9w?-JZN&sj60~VW7f>7Jobati<_8c*QSaxb7c?hn@JZA(`I1^4q+l{jCpPloi7B zH$X_jYiZhu{1yhqg}%3q^Y@n<(=(9-8&W8>yQQAn@p<`fvwO_hCLv=Cmq9VbH%VSy;V|{jHB0i;z_L1<+IfPqh3dBYz zg~mo?I(|0DqAv}5f%i>9fOo3I!&s7up}6WDfmE%p9%^sOrap6}!?*b#FzjOQrfMwP z+!Dpa5`g3-VLKwhDyU0{3<%u4!u781E_EoQ?O|DUrCv6ikk}}8RWFq|1q~M z{>)nm*!^_bO71G)f46)%V-Gl+?(+k;@&#+-hf#gRecc&%W>2Q=RJK?vgzWk9}Vr%`Czp=ZtESWuNq~iW)-3#bOzdc&( z6N~Vak8DaK1d+nB!9}U>-}}g9`Qj(5eI>*nRggA5TUN%kTDlbCkwZ{rXbs#Ayic+Q z0}TtHRJ;E=C&3Z4bJ5p&-pOBO-V3tb%+b^iPmi=$dHZiqqf#1e-7ogrNn=kRq`^>67m`Dnt)=X z*DI#V7~ftBteUKJ2b%)tqMCBi;JdmH_KLa_QJ)*=KPSb0-mi`qIR*<#62wPN6Mo}HgulRxaAd_ZtzE*u%q-nTHouq_OBj&(mCW-{ zDYmi59#m$FRe3JDu@JCe$J8Ys-CgGB`9?uKFEy5%mvok#Y9th^?yT?^g?i;-hh z@6VpeG_Gt2y6lsT=Nh9aB6rcE^z?ZSqH)(lL(}WPd+bwY$%#4=Ymo$nJtIa^MsRDQ z9)!7{W-luC9UUC3uaZd^trB7n0cw>W3VC6wCMh#Tjl{+}(!R$Mwt*{8G#LN~S4o=I z8iUpM7wc2jvJ1$chnwIW@4V5>iYAI|JZ+< z;q0~R?SuV`;6~$b!(g0dXZ4{vwN>A#5l(nSuk6o-1<6kTjm2C=>`(5I+@3jHI1oYn zp~+F-rf*`U{yv8MG(|R|scY@c-fn__rO|b*jn!wSgVZynwlFvIYHsSY0R-gcem~r zD_sri!1;OLk>LffRRq*P_um?Rv)mo!u&c%*lCS6Mzh;%-jhtTmMcgv@_CY+DHYn3Vqbga!k3v? zMm=P@L+{7_izmRIDF#lbVveY>(0>~g^A|n$417ym6pf&rlgBJ79MbEN5*VW6eKyd%pce|mt z18^une5YXpmpWiMm=5PGbNg@Xwsbc&G{_qB6BBMctl#UDooy_1{!<^2`-nt#Q}DW* z>^7G`Qj*zB;;89x@R;E6-pk|Wyy#>iXZqi7n@spnr6Ls~sc;R(GlM%JvP9w+@!Wj( znm^?JmH;?pR1%cpxHZ-JVxLnh>P*<_{uY}xKr^7tFV1^UvwOXn=G^%iVDO5KN6unt znL-7z5hGHiv7QBzOlgeF2Vw)(X_SFz*Vuocim_|TV($oA35{k zvm`mzYD+$Ct036#YmYsuSG$liq%j+f=fU{;cJZa9Z(;GFI-=K`A51Ro=j9<_{tQMl z)W)sO6|HmqI4@5YZB_#MOvqMR^ZJgPu-(Y=ez6A7NQW1YhR=p+P^+Yu!UIKkX6H`5 z#(ycbZHOk&RUjmSwFT#N)rO(`w7we`tI{a+MC!jiCwb)}fANf{g*RWmxo4vrs)NaxwODU{_oljLN;6++Z>!Wy-E6r8MgbJ5cJ)@hmLZpsTlij zdXZsI9>zp)@5X9DX}RZSoVV4#_>tVZvR2eVfrtNlbkFkv4OTtxTiIZ90?Z|KUVzPPlML?nZs zE%rI2{4KCM&z0VpaQ-$+;FP_CS=6&o;{`rNZ`-O3k|R0?+KiLfS#dLkcb=5dv!c&X+ zn>jm!wmVe0&HUJ@ilh+0tv~`@PB;*y&1LNqAb}~GgrM!%sPL9;^aHkMi(?4oiE0aF zVN0oQ<{hLF+(b&#iao1sjV-?0Q!^+dA90pelkn>LDw>+l1_h&6{ndYsEA>+m1k$>8 z3!GBYAz!o69Lz&)RW-hTvw#R!Fi?kX>+JAsjQbjGpA@(rdU^bbIbJCaFd_r=&*%_l z{j?kn^B|MqHmMY;e?6Z=ys}dF@C6qB)E5uDdj?P^9UQ8^2;no}4FAY-X&7RS(%?vi zQjf0LC2+tivp&tVRX;*CQEVft#Ij+Cojaa6u+7xqJ*re@djn@jtO=S zZ@XNN4}&nX?3(I@O-L}zVTo)C2UX zVY~=Uk(Z>ii&oVl_#iVnY-pSVC1j@yivhTqPxR_N?AuBnN!lQ&B%n}=+t~OhBW=ER zCDq(e)wrIW{=3k7oJBel0a5wNUnq@!P~(`ElaQvtRrz&JGUxA2&hmiz%i5ozddcE0)pp!x?)QF9(08QP;!bUUxM1IwifkG=l#IZYh zbhaI zThk1>H(RE5qT7xdXUQSMU>KZIjTVpE!Blirk5jde+ZIAN=&~v^;`&pJf7C-8<6qt{ z$oET3eY#PKn|KlJxkJRZAOCBOOlGyIL6^3VRYxtO(27gb^FfSBn<--CT?&;d^n>tI zD%h_SoJkuI3s%jTuHe1{oUo5 zx3e;#s$r%6ry`dKK&-dr@1i=rJ$&57-OA@bPv&? zYEp*c)u4z;m`EyKTlF)U@jI9ZYRZ42x|?I3@=B z!N#iPn`c~ev#~2bw=yGo0ph5m1X=YA?~HZ&6erIKKi@{Z4GvPFG@}Rk_A`{By2;{H z`lSfg%%Vb+l?I`_2zMdxew>CkyujP!d5SFpUI+&mvh`+M{)tq=svavg(uS4a{sHbq z)VpWc22_nBfE$HS6MtgBiq{|i3kqp8-DUS9uZ~Ed)Y}2(h=w*T?%_?s5)pPO?VeA?BBfk=`&s_9O{Ovl*P$&! zV;WLpSZ-Vm?KV~bP*8981xojMea>pUf#@}oiF%G(4nI;rjquxz@{qzO=2+A~S4R_nG#=$^?y!)dQi!i8bnP)2wI>A8qpU z7$KL~h~vV1#Y`GLHN|1DHqRfxX#P`uQPHamPQ18{Y_y#@&_s1}H8c5TV+K`m3Q-S+GJ<~lGfjxcKx2!af z*^4&aO@FPoOS3;Oa!?7d!?qe}FLMAKP9fRsywI%a1Q${&8^z^D2*V&LkBv+Whq*`n zsSs5jg|QJ(3(5$T%N#Ar_KlBkVDrX2kacKIC;oU~{V--5Fh*mK$`mrpdqUr`>2b9+ z$++AjtMufFo_J0Sz@&%+24+&vh8Qy%oo9%)($=W66ef80gj~IR2XI5C+bHA)qdg7P zcmReVAUjQuqZ-`AQ<3Mzfp%LRw|8E9Rh0c9r5fCsL(=IuRcdkf|^MdXS|vq1V$( z*MO6Z?3<(!Vgu@G(^peGlfWJsm)SoMpo2_3@Wfe^AG{`OFH*Ay%43i-08)Ts7=X9ACbG~(y!&*9U( z=v@iDrRH;K^oqNA$Dx>y)l#aXNouqZySE)~adM1ML1jq!wU{b#ZV8_HbfM3|TQ#0I zx<`CGGxg7&oArzDt^*Q^ytZb5`OV6D!3%oQh`(D~ z`NQ>zk5vnPiM^L9%@hKNocMrt8f=~QC?}+615mHGrrcYW%4$_+Sw#hIs1l}(6@7`^%KP`bxy=)! zKj_{>M~fGqGKIrdT$*rq2l1Ru-#Bdoqun}G0+PG` z{e&fBsf8s2=(Kr=#*In|kWBoE^<0=Xy)k8&3bM~JjJOVLh4NBE6rmN5**I_h2z)y2 z>I!cS^i@bIek=OIG}URaZI6U4m?y=c#WIVmDeAoA0VJ~!@4G1npxuFFop@Z^XbI$K zhLGX68yZI`G(xuvdAATOP>1(!tf&&nko%|wS{sOd5(y&S=Ju=gRRz0?uTcHwD0Ug- z@F4iLDFf7*^&vQ^oj;=_`6GXk6d*^MC}j`FK*~sA$++R#4OPk3>2Kh5e25cN;6uF z%lec5n0%B9rAIVwni2Adq(Psmh!QT*H@x3zcbkv-2P}&1M6T z&qeV2WAG}1V~o}Pr(U=^g>JMOK7|X>eHzbiC8tNZ$3p zv%33RN)iq(Ta=(u@!~y5hzsB;)8MHWC-Z?C7eTG1)nuNSiSkxYjIgX2cr>JEK$7WY zi!)y%zvGVodH05KN3%19Q`TQXHm0c0?{x-es+(N06$ijZ$sQ(DaJ^ArdnXE6q(0WB z+u#AI73)vN45T-0Zcq1C6;$qH_xAby`j@8qCfHRn2%K4>Xi5&<80^AY;CabYkqeNc6`*LWsfc=wV_+w(rc zH{$%)P4b-sbLSVXr@M#F-5pMvo9K3VQqvMiTNH0)oUw37L9+)gs}1~&R`9^?!vj`aoVg}n zL8Nq)j?P&}UCMI>wU2xt1K@I-0!W~9Q+2fGA_yC6erh_cOAq=A7kUP2g$x5S znI<$27e(@f?rb(DE#mlLPGWl}qw6{~(Du?MIxwu=+uF3FSIzbBM$+aG?6kL@FaVNQ zu_%PvZT|N3>m#(-on~M1^tPXT%kCNQ{X=y(&46@oQLgh6R@ku+vPKB$0=74%yLdX@UeqM`!E+=l^ugEgw9KWW}W(P1Y+{ENz->=nP z54G&xEQns#;K|cYCwu~1oEkIm#d_;}LAt4Uk~@sEeJ4~mekv%_E)$le{P})ddsXJ@ z3Vq1M65{tl(CoQ!&kp5BNYqRpy5CyVa>{+RnB=lE1x?qOdhbMk%JtlcF!Yyo zbyoYON4}8tE4zg3kCN?q5?^k-XL zL9EZ2G%CUhx9xu@ZI6;~V)Hz|(5`|nl=caNk!nZhjBh2&$AerqgI>^z>e+9;s2RbX zu%(;Cn~1)nDy6do@$Vn%RiC%y5Osa|H3wofthAZt0S@A25#%LdxU0#x7s&aUAic8L zDv`4wy=s|X)gl_ZRIabSPID)kI4c)(aS74F1B;MKMcj@xtfM~ElG!NJex;rad$XQ0 znfABnkK++D&Ckt_vl9Y3b}XpzQWWL0jxDjm4#k>X;m4HNbM+q_;dKc8;%8dU7Y$Bl zLeA2E@B-%=CZ^Bmzb{f&e`%osl^a~s*VA`!J@d$}V4ZL$oToV^lxOarL4Xj#vgudXT??de%MgEDA8iq{nX+eEcdTbxW@s$kDbHIEKW0AqhM4FXEh^ z|FD#GfHD7JBPyEM^ypjqFsOH((G0ZNDB9$sc)5Amf)(8y;<{3~z_>sAQ>S|PXga$F zjZ*!h4ZcWw5N;_})*_~~Joib}8p81bT`Q@I=Iy^0(#Sfm$w(xxJIw3hx z>2EYHy)9+i?R-E{D6+a}zxQ_I#nGc#mnETx4ED|YAhsp9lX1`Ub;Vo12dphGp1gs{ zNY(0jYL=6^i(-UPYYgfHHXy<}wVuJi4ByQH>c_-M7IRv%Y@hKi=9snyY2 zj(_(CLnzoMXL^CDEMlDwm^fSvtTC9JJeQtdtyB;^_pLvomA$7Zx>)JRTkXE(mXyv> zt~970JN0-L<&-=+S}Vco>cX3qv~M!)bi`xP;g4VYHDh=y;w|p8x6{+z%C3HQw9ZQC zc96hM+&I-7Es?@Im}l{kYC&NA`rD=(1M{y1&Jto}XZOeWZc>MZAv3`RJE9iC2Le+{ zUVT#UNs#xp%R?(>Nx$eo)H07DG1?=3&Lv&ro>dEWfd2KSnPlug;U`MYVwf!+2cJ`1 zWhKk6FNK3YY+u>q=$b@(aQI#F?>_|Ta3c%{ zLe5K*&wG6K)m%YVz0E?!CQq06On)n!jf3KuD`npajTU%w?zhq4hBx4ERHiX$p^_GQ z?vEu=vEOZyWdelbXyW`*O9rE$Le;y>Q#7nSQ%;C8aVMK2yi!I>(XwE=mF>7K*@il- zb(-|TCkk=bL=;Y-`Y7$(qL4}Qk=mWsERwJjlmupRLaKWWqj*|<8!9`Vam7DGwvWE6 z8lpk(wDzh0%RLWrA>c<(qiJ)JLQ~BYK9!dWrD~-byX}(XNo?Q8L z#u`=HeBr#}!m;qIK1#9Ydpf^3YZ1huOk4aj_cviib!0;mnsDL>{^06#Vmqx#)Z%RM zrZY$QuXuC$$IquyrKms8{q*W%5}>{lf+n1^wq;}*VhQzP1V9*<+uPYdpXOxGDFukmj6+w?QL#L*H)b!^#@F@A zWLm;Hn*=yiLYcFWv(3#pjy;99KilioP>InECMv0@WGcKFD6jR{z|Z<&>ZRtG8b^ZL zyAbrYfAcQBD4S^ch(m=^R;+{8hh*YsGw-}p6SPU_V(2WN!Rm~^0h)YU0GWA^eWH+C z-IUa?A=9MFx;JnybEWd&{Zm#~XUEq|i?iKsjt66<4qrkq*NGA~0KM>Xo<9)BB#tO{ z$oFpN*Embvt98z(I{r5gBIdGzb%o-3H_)b^tqznR#yoj9#ArnX@Z$hws6;7LJ$pIb zQ7W?6BND5&&F8u;OsKcA<9%mSwe$bJ%5&+z{;!O9hJ=GDu3{fPwBl9NciSbdG)f2o zaM_}a=!mk)quhG~=a2e~r!$#ksNXpCBZ{knyEWfyyc-D=df>;MT*4o*bj*@8r61v} z(0p!b{@=qxvq*8mx*DcWJIrhCNlE$R_WW`i98GL=k{)>z_5ryzo}3}a&w?g-C~r}d zXg0}s`e(SR#TO(u7lId|-G`lkl;}t4^EGEI|Nl)(^LfkQVpaIFAEchZoFnB* z*`8E@=RRu^dho{?LwQL-#-p))#%c)qDKL*g7Dd5$kWp{ki~slI*vVOyDWX4q3o>ZG z((-!10>LTE@-11?aH*mulci{w|G%SmEcz28G8R#qlrHrVt4>plbKM=9BmnUZCK(3a z5Uq6+=;jG6>vi8bF?zQ7e6P2Y=)1E=VVp5Wl#Y@*C~=>3P2D5K<$wQNiD&H<{*vNI zO#38r(VgTw@OhH(zg$)W_}rn7#U3?>{hNtzTue^c^2~M8{v~@CMSIPQRf6Z|x6xLn zsU7%<#6Ln-eQCE@#KV_a-y=TWh9klgE55n7&~GOAzq#I5-!pf@y5b{1I(u`{PKfv) z$Gp7c6+P1=Th$cF9FO?e1erkLXBb)v8>Ej<&z=Q8oI6M=-WPK!!|77#cw#qGlJ-mKOtG50c2U9dATuQnE0LS!;+Pa9k=$ZG2Z{?g{0tFki*}Q ztk@quJ;SNfoIqFCS^mGpfPFHX>)MG80;JZ}L2h)Q^LKI{reXhh)h;ISDIfWn;WU4| zGz1Cag*A}rBnvEv*S%9N-j1t0LtEcofMxuZI(V+;#UA=Im1_YsI86J{FaMjbf5fi5 zU)SLDW);=lt|~mZ8W()ioJ<^qjtN=id&W{P>u!Gjiietq7(bh&$(U2~+uif)Qa$u1 z3zWNF6V4PRI~7Q-CI7#j1uR!It+%)1+ST>;@ZF(W?1};*V>KDMgoFa7J--(BGlM~j zSTs`+>DKk|K(i1f{4tx|%JwkJS>WG$O2|7Tu6E)t1H!}LvF9GDp`Iw;2AVKV-U92m6oIomzXHWPm z!XJaeZaaH>+KdzLgX;LLMA59MtAx+=f=Y6Ni)^^BP`cqUhcqzUZuX-n#xUhi?8a5ZYi5w|?yP8WP?+t~ za;VDpJr_pIu}!@ivrKk!&+XFcZ@|fNpBB&7OnCqY)H*759e>q-Eg<%))`5%}DJQKR z>gCsa7oR+8sODJR)aq%^xrVCz^8deH%L>AU2wrLlZk~`ATHM*1(Dd==DlhP%J5L}A z9E;0g!jP@)ccpo9zdczUnGwQoal$C&fWa)o0Cl6q$?uxeCp%6wPk}~FoXcuRazE1 zX6gFL`hcq6{hi5dtbSh8a+$Oiiux+&Pem9Yv9Q4Ye(*T~lG;lW8zldT=g=qk#1352 za3y7toAb12dip9(3@2U$&-N9lHN@l1{U`tM1iMpGaMIe9sF}>(3b%Tz%$C4ChM#W% zh*v--*!BqT1@(VHLvCf!2$0%Ef?qov(do&RhgGe8E~es6VNJnD@b+Tq6+A|!7`GV6 z0+8EFaV)xg{B`0F4DN2_yif8O#6W}qCKR;122@fBrnleS|F)3`J+fkicsC7o788;- zWm92WeMqJkGwMyp9p!YZc{hZ!Q)UsFJi}3pj}WGW7tC#hf$~>9<(d4K#U=!RDfqkR zB+l~5NJxL%{FZTF3A2x_%(In>22dYra<}Bp9)A8E`g~g z$D|zp_xop?fehivP?>>ul~6DLn?kLj?x}6D@5fHu>R8!)I%6PPY_O35m2uu-Kn)&v zDNG1|j?K!zz8jrAD~d1YKn8hhrC}Jx&j-?91VKQyJYmm?lt`#!77i8`JY1zL_5qBE zxIXn<#aYm7w;+hMNfetc$tQ@RJsjsYmjnr3GsA*_7D3$Q;l~v@kaziwJ1l1QL;=zS zqtGzJW?IFCJ0}_@;2D4*K;`0>w{kmei=|DI_;RmlYM9uuQ={b_v74j&nuUyu17afr zPW`2_H4G!Kq=3HC?INAumxxv$kvqV?a*S47qlAYF5e8t2F(z(qlyc$QDSw{R$p#4L z0hx*FlKZ042oTJGpn0CGX@M0XoaaP!f6NFCg2*4 zZ_6XcgX2E|sKSCx4g_e95hFGtSsI3(WxNwFE2sXK2?4=?fkB!eEZI}2iSV{X{{3RE zV=!isI#eLGPXcfgZ#kr70m)VD1U&5nM1D zBI|9!DMuqcM^X0PoSBl{(L!8aPS*zqF835Q7W;>M&b=2-YY@ng?-~F#1ZXF(9_D-l zTHc;M&8!V3zimvm>0yge0_YvmMl3oU(B$I0L8e7`a)pP2{@J`J-*h9GKW%&B&4WW5 zlZD8g>$yy@ZO2}7a}$vJ?*EF<#gS9uvE-+z%fkHCrh9ZDh;+pbzqs~Y@$x~C);zD- zOCL&1yi+%+l&E2typS8WVX7YBZ&hy+g5R0`S`pK+h^e%ZN+W zV=TQlZ!+BE^qSr|f8V>Hy_bS?O{z2`bMuyyC&0uI-&S28mFPF^VK;H=(zo?G`je?Yjpc-a+t1)k%Sw-CWFm}A}r?cmL6XAMY{WA zCb*>~Ul&`aQzOA2DW^dB4+1=>VkngWxdIj@CVU8Y$nI=>r2K01;8aB6x0%Pb`sU$@ zP^K`_Cray?ea)$TmFELbX#J(PHJGf}#?k?YR zclHl6M7hIAz&D#FB{{Q$h))?Y7jLbk?^rBliXm!8$_v+IdJ2?D*|mHliQg7f6z39dLwQyN@+ z*T5KpkF2Ef&>Jdh25;bxA=(0r?6^gdkxaB~!t=}f)4Ovdm2>+nz;RF0=PmC`?Qbv_ z+c;_J2!p$T?jOf%X64aEeXi#=cK2yElMWDmzb*VbPEr52_-i7zj#NbnpjC7hyt*JR z#TYxFu6)b-eNBR9o@V9J2?QgZT9i_i+Az_?0@-VPQ%(GohWf#y9?Km}NrNXj>e>EC z(ZOCKet2O4I$>umkrNXqIMy#!`ccSH4Tb5B`0*VsQLgZ}#WeFbLD12wi|0 zCJ;(Jv%RogqFOpU=Pd6U=XpS2-SEk>JpX+ub={xdV%fNi5BiaJx2-*&cYh^7is)x#VzNSe1_2H%Y>m4&=KvKD z8{+l~4wS~fGGW6>QaBaq6itM4Vv>@Qwlk6?6yKVwI^}j#>bmXDBBbHEA1QZQT@1iV zg!t9ox2_;g@hZCb1~C5`@?P}Aia*W2sb&~YUA0fdkif>f0E&P)XyKyrnU z3k%!lO`-%*R+@y}oBm*@EFe>Ebm&>N_n~6O`6K*vD~S31C+2atT)jt%behx8RTKXK zi1#~>46#ascR4Ool1IsU zyGzS8p?DiR38!}a(Sq1;A=W5iNWSTVlNZW?XG+npvy$hqGdF#QP8mJi1RFzkTUJ4@6I((wkAmd{EaC6)3=Gg-TYehezv-+9`2J}H#?``8u42Ya>y+P%|_3yXe?2f zbu??AWIvq1`!97PD%dN`=R&E`5BUqA%TaA0P!bFdfgFuBS0gBS!z=1<%A*Y!Ce${{ zE_IHxSg?D;XD>ZWh^_YiCA35FqjY+sBP`G@?+0oE&vtS#Vuk=^HKF~#5nbON-s4|K z%3eMVk@s3mt<)D0Q}H88OsPh@R%VLygDnDou6L?@cCz78xD^yjYjFy}cn8iXPM*GK zCUX@d+UH(26I8MrFnPN==!zT<-`VS4XLem_(0%5Jt3!XBx@isS?I9#TvBc8}nIRvG z!;N2h@f$5J5klu&*%bs>DQ#vc{{_YZH2DX->`SxWMN&g(-v@%(UJ)8LYo>1)XV`wB z294!I#R|I*>Cp{eFydva6kj)t2|;0=4&XBvpx-hWwd_Owu_Ar2wlzh-xaP(OUFH9yVn>seS1|DHg~KE9^DM&9Phf zy=s4c@tL$YLVosQ2nFp0`ZOIOw_kVLCl1E5(kOg<0#wp=|sIC5!vuq+mY_wI7;CUhBs% zF3xZFo4?1sZBlQ%E_2VP|I=(O9kLt{@)FOd{a{xK_i>cx$OKT(;d`^Ps6M|NE%%j} zNHB&KF04?8ix6gw>h%^PB>*H2aB~u3}h6h2p2*n*mdpc8W;!g@+$KTm% z)F2Qn{|2YMiF&6t@yU@;g4hQZxQ2ycow7V9A`)YBwd;`A|9!`yXiv^0KAA2K~HgBeUp{rr#WfwUMN_Z-- zMwS}CmbI$0-|do}D^FG&vg{J3{jfrq9Aa{zUF83C=Z+QIZZ}Ka zg5DkqBXzujZp)SoSXglZ`j3jEr=5w7Vdyg_W_Jal@ISF(lb~i;Z(XI`LNgZX`6rer zb2mFZDnd9G;3LxWq+k`+3npNr`ga<7=Nj_3&zKN5?r}K5(8J9*s>Ec7N$#VkY+)5T zvrYNa<*iK5EKk-?3IJL~vrKzZy=i++!i8D>KO#99hS!uzxS|RqYwE0~Apdnx1U08B z*0clRVW;O|3b~nul`%h2qXJ3(V^a{C%@m}YJn$~1_xPA9CdZQ9n^iStA z2;Wvg=yPw_Loj8wEZZ9}kriLy`6)dnt-!SUrZocYCm{l;#2TM z@P&agJt0}2}ENBx59gyosw(}7MqTKN(40eN~U^S z34eM@r%u?WEzH(Ikd)fLgcn|yeaeqMHIsVv+(JK{*O~eymeUI*7Y+N-Ax7HQPfE8v zD3w0I%E5*-uKH}>z0VY<^(URcK`?WM8AqpDT?|2Np$^IN@FeWQM9w!K=WM{WuKiB!|WCqXu7 zt&*gVS)Y{1Z<1u&1^_{ZK|saA^AZXy5FvCM$;_)XO>#;dqtm2gL3m! zMzjdO)nU)Y*M*jqqnIie_kX0MP!^36>Hl zX-_I!T%QT7>>_?;{N$FgFH-sOn@y}eDkHLx5RA1&JM!Xb?&*pBzMzsz0`jk3k$bl^ z-V}T`*Gd4a7*Hq5Xmys4r*=zC4CfN zC7Ay`9qP|zY-$mgiJay40D;y}eYP?~M2P$#)QX<5A%kG)ysl?;Xt$On2>p2DIOwPd68b+d#BNAI4xWebzvryk{7?R{26Q>QMa_ zlWaRoQa^PS2eAfIrIwddoX4NpO`ExjG#&Q%oBurYv3f$pQIj_2-D6PEIsID4lu;B^ zRl;+%c2{t2S<16Lu?MzJW=DOy3aq0<5b0XcQw!7Md&NWa8V2}`E|+~eWE@2+19CCH z<1GKZ)DFCp2osUjk#Tn`yKO&war=9$&uRe3P_f(s!>`KV@K|x9>t^ z2lWy!VsC1mdR?IggL|;ocC1unJw3QAw$5ImeAxYRqgIj>Mw?SFEacR_J&X?Hg(m(G zHqbvmGc0mxTztAaJCSPZ+wpIy>D{#m+czB0`>4+^KrqyEGtlu_rNjB`t^VKlGF(X@ z`C(!z+pGR2E$B(Xz^nbaUr|m^RAcz<>uNr3Ns*7P8fb=BlnJY}UI`;f_M#oS0>mumh@QX)yrr_U;m5PDhqlhRR`n>)-HLxL`MzPylK>}Rx4OUu z-<+C7DO2J}J&xYsa{CF^a$ohS6?U`D0`)6rs#QmdX?@|`D{r?svu+hZg&$f?N3hpv zx_b%t-h~`?)s!A(YmlsoVc|#8O-yiYos}G3C)sBFNC;u3C-3NR)Sok`-qI3PhFvFF zE6AjB+2DZ6cuShz-8K2}-NsU~7bknj!8HbYXO(bL%h}O*nVOIGQ$J28rK9a+NFu~Y z2E;Q{U$S0S99nM2+>@`>j*jDQsrHvq_B*ufuG`;d=H71H$Hxi2aq9v*B&N)@ z|4p-?OW4v@6k3px`Qnoq@;TH0nFjRd(g}-7G4h*7OYE6JSD*3ux)gdSw(zSI+EG=_ zQc4UO@^`!?`~2-5Od@WLV5IW~UGHJ8$qs7Q63U4_>IA$0Tx|6&I&Mid<;dkEwFUzw z-su~-|6Yck-Vfh3^ql&7On81HQf3s2D&Ra%L0euOBv&}wlA=7rt5k-oV~8l}1|-x; z6CUNS=H<_2vBpjvwin;D9{34Dk55`4jEv*oS+3o(!K%EqDQbxGP@W)8&tmQq{TRW- zw&(D4ej2?5en*%+3X!YB7;F=SKIJsGG<>;Y^L6oT|pT zB^pwALKUW7NFz|^*45~zkejBxp>qnSvntFRQ_e}@an{)UN~kS)&jZM&3JDAmA`-d# z*h55}O-!txn62aeYmr7F~R+8Z{n1s@Sk?vomiMMqt6D^XD^R9C2{ zJu&Fp@j#JA_<4(--rU}KE$+tWyy+&AS~33B|5HSDBnC6+7WZ!X>`n4_sVokndeOva z0W7x8bl(wQZ9Sf{3aU9hE*qY7cFP}T!@JBzUOE-|lY+Xnbm|F@ytK8Ha#~g-GCEI2 zZyzQOZX}*yYdBMn_&w_N1_|Vz{m2X1kKY-BVc%ho#ZIn4$9M?1VZ=`SD z|9>=HRZyK&dn2DIbHup zC-O5r{Rl+MX_CbHthV@2e_o_JdVmrICako>%A~85r}|CnHND@Xrt?HU zQOgX7LXb^HKPK9>_Pe+E^Y|XlovsAb0qxq#eeSii%)D z;F1#rRknf}g7LwG{r>)$1E`!^t|-rnG9xWw*AtZ(XtCxzU!9Hk6AsYIkmzwp?lNP& zrU6`d>ycH`kbmb>jzKz#;ulDj=4`HKFmR(1&KT9l`{QbKM_@3m=Wj~s6<`zjVOCP6 z!Q}HJ6W5T>m5p%i_d{v=bk{?&>2euO`nvkLP3s?Kh5u@*%|`G(taPHgfu06qtog#w zEtv*km?R=OUw}?^CWi3fNk;HEX9%b-(V#!ZS`OryA3JLIMZuFS1mA4!5uFF3k2>h# z%kIek`qt#+BS7)v$7|V2R@*}P8GkG(TdJc#klE`uLpz+nC!h`q{kvf}AHBR#SX#)9 zI^h(@XFm`XR>#o_LzK9Wz56HuGlAkR-6HISz7AOx67zSvgO8K zd4?v4+&3@AIfpEXr=qx_W?duBfAawgmB!fD4#SM-QALckrDdIPC8{gzZEY6?htto* zl~4cqo!@ySJuc+EIoubd38r-4oaP}alv=h{JvB4#Ysy^S`hM&@k~mH~+QTyM zpECbs&Vinb*MBSO(@GkR(dEZII9DH|za4xbZpiqFB#sDQ7n-aRs?nf?N2Dn3wsanQIMCs zlrC7-M2&$>UTpZN18xHvEzY&eQ^^f8j*UsUwaBQy$#90tFH>@#d;zA*NlK74j+H6k zEG&H*xSH>|1Jn&fXme!}vuaq)R%i*T2kk)u=)#D7?STVLQ0Qpty2d&Iw6Y*rwnEwr z$j#QY#X>W_oLmeI^+6)zs3)3&Cb-zRqFQ5mbzP@s(MrSCvt9lDanxWZQgj`T7d-4{ zj3Nb1y91pv0CBVOPn3!pYKhlCU3JOTUr-exHL4aoNPot zV=bbqJo>?4Ld($SL6S2r!WD&;^@q_N^=^ zvbacpWzHtua#3ON44ytUOp>I$MAT3}8e{1e4t22Ucl2i!5UkVGuII-@PBHEHL(k_> zJUcGLer)i>EvMPbj$!=8)x#}<{j0={iO}`hi_*J~-$y5?a!|M$z4={c{gzESqA1t# zs`y?PNM0NMi^kDMJ~Q23-y$H48&576qgDbV_^Q--zN$oJ(Ta}{6>B<7JKxE3$}@H= zAZuSH{8~JgJdrbae*{17!{6_?T+5j(P^I>)BT~xPN_**^2nfNj!shsBEnHCbisa(t zJCqaw={t;4AOd_8dLBX40`OnrKyORz$tJ&*F=6&e2P z;KtSOao+b(q>uC87lDQl2k{-VMI-6ExTR7L(-rmF z><}TyyU%PsLZa9*r$Xeg)8?p^mA1b+wgQY66G|F%{6fIci6P`N_&ktrmi)byA=y+Y zcc(us*|(NC#|e~~n7XI9_Tj9?vso89+4?J7pZloZ$hhCM|KG<;6 za?Zw2##Cb!=%2nL(h+Q1!=C~yQNg)fjj>Y1% z-LU^j$6!m!vXIQ|9{6>p(Wnu_k4}MMnqgxaeYt{AM*(YJCSZ;#KvstBc_J$1Q>5&n z4|0B^nn-7HlzA|#UJ+RcVqyGk2;dGfqAmTUXCbW`#(4;t zb?~(qSmOBJZ|&|2G}Gp8R8m}-L2erZ%U&O@{O4fh?yryi{X&9+1tlpFWD!ODm8A9agF7 z?hpZn#^)IH)zlYppJWWUKV_R5YVVA(AD}LpP{q;FEifZnH%kl1%5OHl}L$DnmX)=E;+I4k$7PYhC0!DSkaq7vl#pdmNxV%w2) zf>9Ki#4xA~wh@c?N>X%WJVv+CNhmjn*Wbp6hitFfDWkVp{oT?3VTSsh-^s0Lfnud~`Hp175{TX=%+cHq z=*Qhr8~iqBm9F)@djE&u46%BSSz|_?e3&2cC>SYRMNa_=6e%h_J~i!3rl5W4Nlt`z zQMR4uRa#2v=f*W`c`(a)SbR`)gKyqeFTAypvvwe5(2mvP;G)tOR&(An(cItM4DZHu z_LO3K87*b6pzm*+i1Nejlm{ApFr*Zm2~Ab176?9-EjFGnF5U;XZZvUmYo47|TFZGO zNDgzV|3wfa=9bKMkhj>)e$gy<>G3bdl1Gg29r3`I03UQfKbOA$-M+>%_&4setJ4Xd zK=8!%X*O1_v7UI&it)L)SLin5AM$yvS?=mpT6B_6pdw~GL=2@(Ra%e7Wl7 z8W4>)cp_~fxp_W0r6~A3Me}}#r@t$K4$G-qzkhj|eSmc&h6r{c2A-HD?3m^_)C!~O zMt;hqHri-=Q)8_gT0{mLRg_LetK3rSQqAGQ3J2_i&eH2c3glCT3=RqckWyyA2%nxX zhQ34hhU`)-PKfvy_h z^SAxuf1RV6vZt~{n6A~jRJJv24m{fp3aXhrO?3?tw1V3x@&-&?z(ZdByg8KU3M$QDK{d*c7KdyyH)0{g zprIwsj*cd^xYibpj><{YIqizYNhB{vHzwFVtrD7#9QgY>Mw&9$rYoP}$^O1tdU^2` zG-gQo2+4+mJgdzkQc`f+J-cPSgHJ0^4o-Y*%k{bII;%O;^&LD`AAX4OBM$!j zC3F-5QsxN&l(L^b+w;j0w6e|{X!GMk*MMC(Z~A5RRy4IlR{+i+Uk|hWQV5jC^EJg< zr-mr_mbj$A7+fB7F->i!S6kXVv9{C9|6^-wOWVbbD}n}#<+_ViMm5z`JN2M_r=#Yu zqb5>kS|w{bv!`LcB39DP#KPjJ$K`oha@dNyOcWc+X_RL-eGS7!Orp7P?sEQyMtzA0 znVfi}4Qmu!MoaZH4DlCyf}`^vhk8^_j;6s{0U8PnSY;u|aE#Sb*VYABtI(t1hZfb7 z5F`3g9B_RvJ-bZ4@l!V9cQ#YauKMM^lncq8_Dl4u?z-$(vGJ|geczy&1PZO=cCEVDUWL5A*t4uCL2e2d1Yt`A3 z2KS>#Nqun075cIOq*PUEY98CH$;l(m7*2odho z6U&VXx+~xL%Fg7m@qXI{DoP06-zN`1*UOAwNFGFB%?)|HAx+Y-D4)0DlGjRg+nl8n z4u~!dPXgtp86FMc$9#5HgJPW)#g^2$J5f%~bj;3_pb4RvOT~=r7fsNd(cIsA80K{v zuc|2kN#QFcE9Kn#xU%ya5Hujs+B-K!;MsrlzIw}yET3 zm1BZ4GndbBOH?7@g-yA~Pwd5!{QSC@>opFe6&JbgMQ*eV`SkkN_s6&lFlM@W~~ zMft%Yn9-(;{aK{hD(w4rhVqJeA8>h(axGDv{P=R$7$t}b;!GcsFFM7)FPC&(2v>X- zwz|PTytW2gL&U1LvS`;@e$>ut_p6RRCJb&eS)81l%5kiLQ>~J3#Ds>I=eM_gkEZ}X zKM{W{*1r%kI7HRtTjq9;s}un|(Zo_fz+yumr26x^Dzo5%D^WkHb>DJ5G;r>rJZ9Rt zQYz%?RP6p0yE z&p6f~02^OcF`%Aubk`yAy}Cm%r$Zfryy2M5Y@vOr*XibqXUSyI{;h%W$Az@UtqWnH z!BV}yWwU!rs-P^G6<0JG+9MZF0sy8zc**m|WzQC_SJf32B`3zmX&WyB7=SMNA~Tap zeq&90PN!PdLg3@UKYWon0cky)lnHIeZga!-?}PW|Sll%ls$!&QJ#TpS(U)6aV}V5b zsF|6Pz~j)sno0~4U2T24C10Vb)YQLAI_kjcYBZ4LqS(#X-QK6NM_yuO`O<{!(NSV? zK#)5m+)J?y>h2c%)$1P#pl=@jEJMyr^2o%ev)|7cwCZ&Y^SM~RG&JB>f33zBVF(3Y z(IAS2Wsn&2)EK#26Li=?oYRafm2$~h*n7FS{9t1w;c^r|+ZSa{ivXNovncU>DeMHOAl7$<$$0=SY+6uj^v}Ow;#;pV*Z(ne*NL_x`s+0 zlV3bpqz6Xdu&%hU7qN3neKfAkLW6U7S(6}(2r7v0_psZyF+1p{C#rPukmZ*%)<8a{Y!$Te6w^F}-MkP9jg zB!1^5A+B6uo>8WgTEA|!bZ+iER%2kB8LMe<4f9k;1-?f#jwHLHqT6n7B=tRH*v4$k zU?Cp0=pmI70k!kh^k+Ts|ZL)i!F zYQq`7plM_V*k>A(Zy9$4vK(_2kVG|a5HSrrAw*Cb_>|n2LejP9qtNCp*v!h<pi|E^4kk>t={7{Cle#jRV)n zX@)VAGqDOh?2jYdm%D!);t@oKHZD3E8XJu{32`_Sw7YedT2WPlE9h)lTLG&U27oYWR_^SPq{=b zH<5X>{sIP#t_BZbXvw@N4*lFdPc^KFO)(t{Rs#%FaR2#579kE+NqNy+S-uLJp$;Ku z%uH5I)b*YB;HU41fkh_mNO&Q19`*mUDhX8%!tWeCR!6U|@rx2rN3TH=c*FIy>N_3e z1FX4~WYixA@2UGw%0o{W88tY01%!sDVjb>ekxR-&7Szfrs36tVOaMdQh%5c40i;@N*3|qZ7Hgj%e>CZb$aZElGxa} zDc5QOSWcw=?Pq|>zueFJH?y3P0L`~)hsAAY18CnovFM`-RYMK&vz#Q5xu%^6|Ks&$ zSGCHcq(%u5vIOsrc)f7y2L&*BBzcJN$75*o~uSv5H2=VzT7^zQ=O^YsEka1xUwT z6%_oWV6#E=&re{Y!Dq^oYXt%ia?W*x$~X(7kV#KGZdWW<;ZU%hwOTU2aAN{{QdTe`#aCO)cd~u zPi}iVBR*HpW~&AzzZ+i{Z|^k~b)Dj5=B&`R$U@rC!aU*&bq2oFR4VcA#?66gYcFuad=fT-B&>udzl$3J49I+8V z@s%7D9&z67fEHj;^A%#}fqdfH_V{jS#Z}qnWQGIqWlbAj%G6TEjzt&ly4~bU=&4mT zYv?|A?TnULE}~X3R`T%j=ETw1Zb;#m*sE5^V}5-7o*HPi6k!wuj4%2RXOR`8gv_#qC&FlqJTY)YTMnUyB zB*kiJ=<X!b<5kdcGWN?G}M;8g=z{ddv`P$avFE`J29x&YxtV+d_fzWEbpt zQ0wDuJ4ykqQOjrn0VtXNNpvM1ddz=U=(V~^f1$o-x$oJ)a_6-*m^WLjJV-;1eZF(^ z$k?Ig!*3qumY;;GNU7$+1x8y|+Nxe1Gt`%srg1((=bu0F zPd0R+gYmyn$8*YPQ5)cwaHO_trw)5ETV^(_pCWBsx>c-!wHI}8+n|4eh$5x@X}2(X~IxohTZZZ@w? z$XcsZYU|T6&`F`2#(H2o6=hV+t1YM*D38Ia*n37g%gv1T{ym1n8*R^020K4G{Lrm% zYKCHbKzM3CVNC3NrDHL5`oh@Eu(~y$gn+J}b#aj+0r+LE&TaTIYDD_(p{r>GQD;7acPC@G5>BDISBzU{X1eE<_j-;luc^5)XxGYHp(g)BfAu0Y zr{2s8u%J{`FV+JG{^HEasqQ_d-@5jq6TpXiB*cF&`VF~UiS6-W#{+I{#yq+91l-SD z`JtB%S@}n+`2&kc5B@b)`9D2?(I(`48e#?WtTTxh%zgl~Bw$H2U zr+Y`!OfGz=TB&GcgUey`$A7{ic@h{Ldh!O`RCL#Lf7GBCfay6Ex_1!ohC*K2A+J!0 zAtLH@JP=SwAC^4w(KjhNskW|PL$$B#kUfsPC&bKYdU;iZ;$!dFLJ%A|EC73Up0R=E zK7g&APi-c3+cqeP>pK!L9uKdABk%%{hguk#=!tcY%$D8qhS>4*0xqY1N@-nKzkJ~Z zSi-y8jDLgD;%kYrwikOnAmM_~S!(*K3u?vmSWM>wH;Fj(W;;-Hbp^Ch4_zn&2Lt63 z@8;1gfKu9SQm|2OVkYsUf?W$&@BFviadro&aPy4D7NP`_r1MA>QU9!6x5k=Z?l^y? zl(_4Ft5{k?0y{?=s~vZHj?!mH?#VdAj1d-Loar@dx5BZoC@(5aG+^*u4{V=z?=sD) zF3y&up8!%CCVZXH44!X-l4A-orwlgwGkn&M7nywUfwZlp=W#D(WJGeMda0_+=V&<8 z9T5a*T9H#PFQo5}QM=97L~j$aldX)D@PM2F4Jtf{EObyWE+|oMZOh#++)&87={j^j zipwBnK>paCP_lZCzSnX584+eJ5Z?@Mt>qhA&d&GI!N&trY!vv$4BO{H9!21Mmkxi; z!`^gkf{J7DBF5T|lLmA#nM8Qc+|dwPDu~2qg{0*a60gH13)d0AphSxdBNT6ACIn0Y z>RrHSQHQv2Dv$st!kyi*9bEP#^p5wg^6~cczB+e@4h!0Mb>9+);}q;ZU-(0o2H_*dK; z8RvV>MUR6O0!2reHu89N|5OixDYZz<_#}lw0Ldq!r%$Eg<-4b&#=@&1>U%g;taq{X z`g^_6`&tPI=F*tduBd8o7l4#X@BZ)O0iia2i9rvV8Z* zHPEiqP*8|;AqZJ26Z4$ZN?J8YDg*cBj+C2akO>JP+c?j;JjiV_hzhTK_F(2j7nK%K zmB;yHRQwc<-c*o_cKi}*Tn;1f$=Bp*umsNX3lqR3(<&hQ-8ABz<5=g`>bn2>hC1j{ z15*lCaVgQ}W+Uu5ijh<_-sm}gzHT}vBlFFky!4oh(!}Y}bm%ywRk&Dch}UEV>)HH~stx<0NA(Hr}WZ z3!#s-dw*|9Nw^a;y8wYDFBATELJ^V0Mi!N!+mCk!d=pV4HZ&MByx zqda@R9NPPtbhOeOLy8heJoTr7$@~((;|o5tlk)icd*0`+pZU=cH$2H6p(#S;mm@LC zi8YF_Wkm1th!hMa2r4Vr>q^8F!sg=P{39-3gm80yQy0-GgM$}A5~}LwyyLB?I3vuQ zK854gzw7RT0!(vw>o;@h6w!$D;#(dSNQ)J`>($tz;l|92|EUy!!HF5|MiCvN>fj*m z@E#cK4%P`++4|;SCN(%y5_xQ@Hev^lYP~ zty3+yG9!*Vjqu>Xh^o`gxu&p7#+UHDy_gj{Iv{4Uj|($q8-^FsiYsG_o@{LYQgL{d zDS;DuTFYSvGW6(;q`3xFSi0+47Qg6BVM%y-opV5ti&*7fSffj$ug76bPjK`w`4JG_ zEYbF1#?a6apiO>hV4Iayxa1Q()oCng%8OxY<-!g8M(+Y{lwtAr;b|iEDi^WU`*)@r zT}09NR-G^UK3pUCkS(z2+rH3+p1IDq^TSCCW|_B`S=Z`wt;R_RKaKTA*%WzYM219N zB(k-QXA4G@;*RWn*vC^%1MjMXZLC;i{ZTr~9M;4NjnAUy`1BR(A16EY>uRI z@j8@~6#*JuVzuq}PH+Q<-{A~tq|nnkqW3eFd?`6T1Y-o{{TL{gd-pN0q_1QC1OEHm zZyIgQOF0=ObHLjBWEH>Ji$#M94cE=t6J2eFNK+L%?ku@vdIeEwxdqE2o#v{&Y}4|T zh)#=7ZDrXa`zOjtUxh8>&Kola&7j7&>#CfR(7`JHz89$VT1S?xqg5gQi|r71~C zY+w0_MvD@@Hed9i4f2qMFecLFJ;wXj(wGRZpM(`e-$v)jrRbD|d8zOG9Wwy=8!M3z zGEUN(ekVXQvgAV1N~Kb!mPjL(K&e3hzykn$O;&!aEnk5}_4RBadRw@{X3;bobczLRLX9b*8_xW`jce}dqC?4$^O%^1(+%hg*PpXX+jX9TX? zA}}-}hKFJa9NzA!+CX0%2b0IVTnRW*4aQ1a%PL8pT>qb;{crRijk6E?oRHfpjmG5S z;;^3XZe2Z{iY#jeb1p&}?7;J>n*mozYLkp)RI%P~j>(MAG#R+qARX|8p&4)a&j>Yy z#8d70r4debEe#;U(NsBk#4)=g+rmv`$LUj0ISbYP@F=hVN&OS7BfdmLmf4e9!CJW) zm?cGGK%(XLaP}GiKn`Y|5!RYGmR25gi+5F{{d4E+3ouo+Ie0NGMMh>%Ykq!#UR@WR zX-@vRcms|wE}b#%|8R~Z(m{oMIfprI4kP2p3D|@2lsF3e8T*gr#}Y=^pB3>(OvqW8 zkm?eLQlQ4Dll&ejxyc6q8W4As-4?F>Cr& zY&SgLf%!Qxb017E!;`6BsVaLG5?@kC>ncHRe*L7Xpm2NgSHMB;rj#BEQFNx3Jdk+z zq~k^Zu7g^VlK&Ihg#&9k??O4h8}U11>>4;Bdh%NCiDUs_PZ}WpZ&C*w4zuq6Ud!3> zAQ51ZBz6R9kD-6Nh|M#Msy>l$5Z?dPP`u4xZ66|%gNf&tc_ zRc7Fn^pf+8Eu+ENBg)m{mY0kQ`p{~8mb)>6WzE!rv(i~t)KtK4QftW5^gc*s3Vd0L zW_2b&y}?9}Ug{*=VwS&1$+C_8N5r*e*YG0oA<*QFE2rRV+P(qyJ59PjGZkL5maW3 zq^raVlT`*rVK_tx!9f)b4 zT>Uof&=Nk##aAb!{^(HvM=Ya$NT&C2KBJ0p0qZc0v2@qdByMEg8h$` zy*^~|Kg*#qZKfTFrk!YNKj{R`Vz+mg{H8A)GZTsbDU&D(o*! zC+1M2k63J}v7A+tApDB`Fmy)nns* zMC%$v_DNiM9cU9ZsrH@hNSUeUVQ|eB%4zidU!g24l57Orw0eb50paLlP#XzsJiotns>h7sK*5pOqd+NUWH<4#Q-3-z))-jMEW!On9cV5_ z*AkOVp>aGciSeUG^Vo+@LV0UsM`Qa5ugg#;Kz3NXQhgARHLbpsC;YpP>va&J_ye4r zzt4$QpTfqo4fmfh!o-LG`2(mq!GSU3Lv+MRs~nnA+dWCUTU*#lU>&H*_&R$)mV6g3 zfkW>nCjcBEKlT#= zCOuNk>Om9-0uNCEI4sorrQ=K`<&B(&%DKn8^O&yc>fmn`*bGKW?kskjzXhwo(E4p_ z9(Mg9Du+Ow`PDNwwAIsRID{N`e(ZcHU=PIuXF{w@CBqE3p4`{T@g(r&N5`#HM4Rde zsRByqSW%F+iQvE!_$C4e0=G$2Omp#NZO6LdLYUFlK{?a2|HZrJ3(JfhAQoY_BpI2N z$5^={LbaEa%PS|xvwhOi5M21uQLJLt&m=p-F~X^!91e{rhp3fI50C5S6?IogW5omt zYJbKpM#7)uF%g)!ox*`hVx0UjEZ>z*K&f*e$_VRw4fq9}?!9{-N{v9`o{6kLaZNAz zC70MVg3pbl*xa69mC05TjA}`uP00#+@_-L~+>Ty1m(uZplDy2M6x| zZ8JqphqM60_(fiKdozes18^bje&u9p6K=9xrW~pdt)7MlJ`MaJhwR4)Xc0Pd?M%sj zd`J*kEb*v2HP-X_qlZf>)fBF1_~zzP2WS98l=dR^Zq98I2I3@)2$C+KFmcB# z`_YM9JolJ@+z=|_r^57xTJI-sh_`Q~&~pca-#?m4(FHZ;5NQH2+0O~!9+ihCYpE;$ zz`$#IuV8w3F>sDMfDvmh1@naG!QYkGnfeOB{kMEx!6_)tA%ZvrghM8odrVEv8mT1%-RB7N=odofG4QNe z6`W{%As;TFiv3v``}EjTkb&$JGm?e;ND4Q@;Bf$Nk|+yzyhUxG5qHmnZXOFj@J|Z} z`Jwm*r@}j(Nk*?_@bhjn-5_z1Rdu?+8ajtf5u>-kYb-| zNFAFTHa0GQ027U6vksi|V|x~^Zkv9~MR2Lffk5aEo%9Isf7dc-5ia+l6Q}ggA@T{= zJrE7R5EUh7-4{5MP-chev;I=KY^9Dhd3s*f5tedj1${E1CsnSkKR3uab0a{L5?SE4 z^I?Tv=rNdO$^Xd0FPs@vDO&(~o9tbjhC1kd?tIS+H<4L=JwSh1;^kosAv>OpkwjB zQ0fh{YmJzmRay?7X|6oTeWOUK%uYGvpewl8CJA1q-SU>4lvi-Ia1_`wv8D%4C4)+QJp~+zrK~n4iKSO9Sm@f$+Kw7-DvuTCKG}ZXL ziU>}GSF-Z~r)|ClNByH2Aa6$9ZVji@>7ogfh2(3eR%)jbX{TEA7?7(7uuT1oq4z(v zRv9~Mh(-T1;gNH|eSfDhEto-tUl*%Ir42^bgFq&omX&|q}wfdRZb;5OhUkDl{sUb4vX<{Q@cgThU4h$luCE+k&M*}ozs2Tw*?;k3kRn;@g z=ZGH2#hg3GObs%HB5I2U;qFEx;bbZLN3N8PV_1RXX5%(TN4OO5oq zJGNf>NquCtxAe7t3B^PSVXdbk!%6T|)a&2g?F5hO~h4qHrB zn(RceW{j6!6n7STB?JOU0$fZOWo){*>vV6Y!1UWc*Ef?7^$qg_mZpG9BP`8sTXfi} zh`3zHM(2-%s9)(Q!nTwlKaM~(P(*?s@v*J2OU_lgnI^X|VCZL@^B6IZeg7gq@I&Cr zNzEmIch@qGMR-zj zA=%bPfa{6pIGL>m``_Me&X$wk3!`2#6rJW2yDUx#?L=WX(&&O~gE2Wqn)h~;_Xs-j z{f^K~9G-Kak9`A$Bv!E&@>0O;G}1mrpn(4|ZhPX8{1Jz-%Ice$HuEhk0Dh5JF zE@Y|`Frxw&3Wm;|Yl4y)07-y%9bbHya7MA_s4RGiPj$V3cL*3Y#nW>IrRk#BULnVg~4CRw&wSfaFk|KueeSGT0kzJkkv_vXMh2!$Le1HPM=eNyGf4MJ=A8NAbDsI^UwVBRNWfO zmecX4%i%K9`C{D_ipdmi(g#rDJV}=5#VXbN7cy}LAW-m}ktwk*%mIHCrREPC$t)^N zw@40#za9(x&~8=JTL}lBwj2Ha#k$CtB3EQDr`5C?2E|@gO~}KO{E-*sBmN{t2ukc| zU1zhKQEWABWbSdKwiDisXqvmC_)jDrNS~)94+NY!Bf%B!!(tM$+jw%9*XuthEAg~7qsyK=~(D>_m#!$y~H#p~q7&0q*~M`#c~_SL_KBbUYMZ5JL70zH~N3%^v>UdFJ1pm1%WLbz?dRBfDvnmrf^y(CbVao z9R)N`9%zcY{rV+%DnS2Zne}W?dnA<=d(e_6FP5E zQ}RAS*EhY%J$uKQV$MSWM2clgwbf?pO&4<$X2pjl-Jnu>mF{n-`%jI-mPqPMCne=F z9W|H>iwVW-S6!ZF1PQRAfZFR$Y2Qg6f*%ZBx!}X0sHAM%=4Oi!ixn_0FAgZnzdIst z&*I2XDtWAQ{^ZwC70{+|{;CA`2X~muBZDMl>?{Y6Y)>iJ8T@8o;2?d+!`l5Ic(UE> z(U=ZSWt{es1G=vX4|Ss-gU!A~tBl7pO~wP}W%?BPHam~=?8=J7r9+iiHx6rmc2u0$ zY?7{`_<=i2f#-Af3{QAY(Qpij0eY3K(BSOEvug$w;r;X*9&>?4#%T27tzfcD!4D5< z-82HN%`ZGq|LA__I<-Xx`>`R(9*iB+{MsYKI1dRXz*d($(DX=YvFit7I*Rhz%~6LdWI zhZ%_?eBl2#!rhbf*UQB3z*H#|l)y+yPi##UL1sqaNT;asO%k}mk!B}W?Kbq&=IR77 zx+>z-qs5g{CLf=_l7@o&rzCBFAg%JnNaL`d($7wgkRN^heYxgRC}I-b`hYwtX{Q6V z!eFx8v?HR|kbU=Ms|eix;rZ9ECc_E(`!0}X?b~f(sEow&$j{wA8{?KRnNW`}(_dOj zsi{QC<~e!o`6s;toag1R*(@csS<;xAb($A-s;d^y%*I_m>^;w6CtEa150{i$bE@WZ zG~Sn1DX{IgO`W^)1z-l8dL(L;V79mOWfz)8e;?tA+oy^tOdoZmz?U1gS;dBRM4LDl zT)rz6{`Wqda*IXwhyerEXMX0vENFz7i0mcZ{BG+D4B|+*fgy^0?}}Uc@e-hbY=^up zWcTW^XIicCUx(mKNf~dJo5m%;lAhZZr%&)%kTTV5_?=T}Q+3LncD)+&a;0gfX=TqC z%L2k|=-K`%yj8nG6s4)}8PolDUh}E*Y70c_Q#anZDM*5nZOG~LGCpMQp>H|XK(%yc zR$n)poR+rn1^TRTUvl+Q5fp}9Qf>^cM^aeuOPu?|AKY*1bbFNReK@gf!!M=$AqqOA zV!*a&tV$XdMY{=G5?h3fAtkb0ojz5kTuZ0en7*Vufi+r*_*b`Y>_F3w`&$|WHz7gU zW~hcHhhcprQI(wzIU)LbHFSS5ehHJ(LqA+{aAaQeLy@CKp(FUE?`Wd|fI0wY(?!NC;0HP6Jt|&W0k{6S}|4X?Yr;Sg|h=P?$b^fhG0I_hb z>}lbQ#mh#(6^$|6O{z{R)3<7DRD+43!rnBj?sLG2QNUC<7xD0*H~fLpDll8NekO+) zxY>>G4om`UZGnIeu_)ogHu@DkwSIOis+d@ja-h+{0L{RlPif#~P1rLV6VJt62Bd0# zAe2K($4aQ~!RP6)HX_a7jqrH@FL%J>oC4AKvO@%Olr!3dPae~1YWmBfd1GO1joYcS zb2D{905FuV4+*}aX`fGwp2@E8)NiW;_62WtGz)e4cv>ggk9k})yZ;$LPSa}9juKv3 zuw78gTXHtbqJ>YSO3EaPEoeS-t<+~pvuaLUvs;PQsb<6y9dq~{zoFXMx8)Zy&_w26 z=3+`X@dfIlKfd)Vi)1=!6&fkbm7pfTLN=fbIVL6r|9mmT-Ji;gzO0D=&Vq>EVMCxd z@CS%Fv)|oxxA&%h5&54NApe^?pC?n4NpD5r*pHFqIl-RykvwAyi*Vo=N9=^#QU`>- zSd>dsk)M@sN-Z1kXN*T;Gx6p!-WrY1FQZa6S}9mYvX=bmf*oXQ(x}w7YaYQ_L8Z^d zO9>)VNeYpXsy>Z$Wj4grIp5W+nj7-vVQbR*94S0_y|=1ILD`kDSW|ai`|UY7yKgfy4k6Kw z)4i`3?!S>)bPLCD(u{u%+xY(7i*<7Y=*tQ;dihzB6 z=eqp58AuVvVi^ipnI1=b@6<4+aSR1$LbO&_QI3hZt$T}-x6@c0Yq>|(br1mS@KVJW z+soQy(M4;3tO!DI%_#BX3H9v+Lwk9X?i9swUC&9iUTRqjIHXU^ySHZ&Cj8t$*lV_b zCDQHf3AS_pCh(n*eR2vdps|IidzMtzU)wq;&Xmqq6OsHQdE0Sl)n*M2 z*v0_S=sRw=PWkUVh7``9i&fV_D#Se=8B2;GBlC9|CZ#-m|Ae9gViWUUpNH9emqQa~U-c!9XU``X-o9tn zw;Xsvo|UKCg@k)Ho1muQ154OIiOM6Pv{WFRDWIU6aPYU!q~pq~%b7m)2Wo*pzxn}N z8WVaA(J#%fzcu~uDp!B~LMYC7Ei4?Hb;-3p&E5L1z;i$ZoG?LH0iYSr+)upW^Gcrl zbZGw~2^#ceJnd>q^xEoxQJdq_l5*$Mpl_K+L=?e=(!3np;nY~YZ1_CYe*W`+y7IGw z`CfN|V}kSuVbT%FC3AR}nA4g)7gX3B8{7W`!?utNv=Et>s@AsK&4!z-!+v8^*rZKk zdT&9@Fn4~de7_iMEI(cEmt=e|?$*!eQA|EdYdp{3H`Kur{2>9 zx{fR3rXa(;lUhT%+|prUG;ce>sBYJLya10O289K)tf$8e@b3f)lWIF&u*t|_ zK9J|H-HkPF-J8*Sd)%V53Y(?KJz=rSfM`@*B2@Zj;pYS*v`*l_~yxc4xo$bdrY;ATFg_h$X9prbC=VIno1bv zF-LEOOsBPn!G`_EFA(I49@31b*YVn}8{3z+t9SYjAPiC6nc+V6lNia(?Am0`=;kSZ zenh$vxA2RchWmqkhNvFW3m9XOl_j?#Wdgy6UvTed2L4R1H)#gaQCHlA&M(vNRq6qb z^%#&3S|1!PgC}>_4Sx?h7KzR1gJ=Aqgw@m&P{dN0k>YzGU~l z9Oh9-(Ri4_?G5A2kX@nYwdi7qnjR1d>sRwycJg7C6H1OSuDHfjRlA0llpn|mRqx3O z`J(ml`rP%tcC~%>uGYhuH7k4|F zAk_B0{U1%|9Nl*ltnsk1+1R!k+qTWdwrx9&+1R%2##WOwwv+pP?>+Y<{|4u`JF`3c zJoA}&3#1>eAkiSpqb9fef9d@{ms=1v5Q)bjs?A}LfslX6qq=oy-D$n3uI>TuPHs)z ze3D=525(P6Y)5Wcw|*s496EB1?FQ^lg!>Reg3LJKtN*^;HY!xt&@+~S%c(5WU{oql zJFj18zwd?r(v8qKrK7^q!%rHzDam6ib5~S1N%$jlJhGIPb=Efnw_hO0I>lje6cVI zf<=eGV?WaQaLfJcbl#$zsLnU)FVgQ2EnqSrS|TfRVHJIOAE8tdfn?gFVBj@T1bxs9 z04eQHfC3x)Pg}Y@(plZUG~spYZ_lvO0T*o64l2#$9BDG-#=Zr=MaC2+ievfv7he|6 zsl178g@KQcwndetG*}wip|=#Wj589$mf{v3IsHzqObXhH&7uh_iY+r)uI0rliv+k= zF59iZ&xm;%6=><`U3kn2_$Tr{u4ZZ3fGG(05)980aS|zxHxy4cs3wt>lZ4bo@z1d3 zB*J2V9GByb{*gshFJxnfAr9>_sP`-ZA(0|Mn;8~d406Xho>aKH%zUN7T9HgbN246@ z+Yz&$vtgib#x&E?rcIybFDcid$-Ehkw%}xO!ln#~pk#;$0@W2AkpWo-a=2x}MTl5GPqutd)nGpiZu(MDAL5l6!UxbqWoLRH&X}=jyx}NBaI8=PVYin3%Q`~{8P_rU zr=#pqIH7(Tz+l@^HAnm*X4-|gJ20(tULLDsVq?3J`O-lXTm}}K6)0WeI1<}6Gc!}? zdoXf&ebHL$xl-%iP55;)nyg;Q@i+VGd&gJs(eT7Ux1SUvZzS4;ArH#qlb(-@Uag*& z&kM1f3dNF@B}oXhoQg$B5;6F-Q-fxdY!S|bm#3R8I{Sf_-z*Y%o5u%5kHgEqwuLkA zObVfiGWE0zb(oxXw)e}kH=$ku7;(~B_pQ0;LQar`lu3$C2P1^uJDy(E7^xd>wo$FG zTTt)bF>%ESqpS{PhF?~dYDy(C8-j>UnTK*0NQXY6aJb5!=*UC=$Zz1j{Z*%iNq{+LlzFmz4I4{ z4hJIyUfn2Ea?Aod0fl23dG;jGBpIcVCbDqm0R$e3B`ZV|9G!qNUn+Y#z;fotI5?L; z2A}QB_Ul$v@{veFpSk!)CF6{5m>3*W<-pLycEo+G ztAXx`*%Ye;rOYCYzdT2?t8Q)?0AkE2Az$F0b)<1wxBdErgg*5=q#nJa zrXs2^#a93)Ra!g%{0@RSnLdmBh8~0yZg*gY;AOyl2fN1Aon>-~b4HpDaGs3Fz?t=Q z-t9SfcV1mx#lPRI0;07GD}w9LQbp?LL+>Y~r?0Q0+sAj-Gy6c~g{d|eOE<}BRutg% zmlFNKOUpplCJpqDx;poTc+t7Q%VCG(=eu-rOGPIa3TJ^h{jxchJ&OyH&aAl=IA>^0*>*&WLW25{#4cYbQd8wx~3KwG(1^L=~fB zT^>{LO__+Qn24g2kwzS8y!9hG6eAw01c+@v;17hbDK-TdOF^WhlZjQrAS2;VwaY)FQmkOmmw8PTqL!eAO}J6CU~h|`E&pE=KBBC%sM@PeE0!bAmm8@IJ7<4XtBnXY zF%<~@(yImHz+b?0E|r3B=%gr*`c0rXgEO+JL6c=BN9SjY_L7)bVz7Cm6&+*imeU&D zA%=+Qg(&IN^I!h219HC)8Z502IR;S#SQdRMh<9!RC7d{mj>BShfA2{LIYZ%V9 zwlxKo69ACITTbcF!Lq!Bp0Tz2-M7kTMgt_DBIQ`;<;WIB5t8Mn zkj7BqQI6!E2T6)bi+yY+$In_v?OTD+G|)A39Roexlnr!{tj$|Na<=;ckUe0#d)6z% zcRL@S4j0R5v7de6SCm8`((2}PjZKmqq>EZQz4x|=V&2k z*b*9T=lqEZMq5A~X)F!|$-hi&X^Qfn4L0C~T5P0e9W=OM6lWb2-^0Y?sG>_i3ad&p zE?Gu6xSi)aC!?D!cp1@F>h7Kh;NLfgME(%?H@!@)ORp!8t9p>^{No(bu@)0 zs(9(_D9-Yq{x+-D%&4>NL7KMb`V@!`dr1aZ| zae6!tQsULAq4ed5yQwpS8DbjkQf^coyxqtCf?CWk*3hD27JIY=;R@Eqni2^dl8nP3pIrkX*(}C6?>o-gDm-k(vIR0#suZv1=fHkKOgaVH)Y5=U?lOEk-Nkvmh0S^ zCpNq zE0bPPPoe2Be9uy@&Xw*vC*+tqxO_0|o)ibn}%Ld_;8RAg7MNNr+PJ^?!;nWboE~cS;3LG#Y`3bjK+Ft z0UvjR8NZ__yWBy{*+3(^R`tK%>hOQ8&mYtmzq*McR7NxxE)Y)%-}|4a_*195YGrb0 zhRn{$1g?ptlutTf2Ima1t+pp#Zwe2l+_|C?qGcOOX)_s}E<3YPf)*7(5-gMlLX*Y5 zDFe1J+#GrQC=!vh77(Q{v)>U15Z*kb@7Li1eIp|PbOZ^cu5EPy7<0T^Nu;|kSBmVAr;3o?wuO+|$`jZRsg?TpK(b**AvL?8{FZ^H_ zK#>?_oH-oBZ<9&wdBYH~KoR<4n=U7^aH$d6DcQ#-%bpBRT6arLmHypa+kq?BuE4IK znFK;6tYD&}Mp`KaPfn+iC_;E-K`5z?UV1UD=Bnp$OoaA}xujevVS$&?nakKRZ2@nC z`0+8;t)#G3PK2-a@9WIkVD8!_mmS0?@I=Kt@b2E|k_uZ&(DV_JZT6j#8jo^9zS{Fc zA`NC)9rq4~UEqxS&09+N!)XoPMXws*ADlj5nCcz=8k*)Ms<;2kzrABR@V2ahMVI4wxdVX0Mx@ZNY%&oz46*`^@6o@JEM!O#hsO zyF@F0TUD)AT1Tn%1Zxya(JzI@TM=Y3hi*<4*~wnY5^6H3AhU9Syii5AbaU;Mp z_3>28{a@j2=gxHba2|LS4nDG=luLuSyv%*S*$%0qmWmqiXh`(|Wi)iJqr>s&#V~S! zoQs7kWZnu4@4JcYOE|Pz!JcXl_pr^T=kNbYAuw13tmt{_oq_b zZ~E;#))?&E?06gu4j^Uw!`46H(3#CjcEg@<-KZxavi&K_5L%q{yx^oQQm+Ig9t zofIYx0HHcdYp)0S(E}MOsh`N?M;;*WqN6lG2u@?q{OquciA1w7#`c_L57^udKFrP2 z`VgMcsV}7BX%9uoG)I<4BPLvxGdHGf5Orb^rQrL0oL61JPTOmci7YkGcGRNH0s`<; z_K6}WixL}YLw*lADmPZyebh^&=@Su!6-sJV%t!ZA&E5|L!>7QhdpiP22W)bx56LCU zOiWlzAR&(~pdo{ndC@DqG_;0A40$2Des(>$znF`l^FX|aWX0;J!R&h~6^YCv*}y6y z>$ogqj~v}+zWgw;RHj%Vi3}87adsl%Fg!IDbkLz9f=m+hfbw5=-AbI_DG#N#-p*T> z`MwwHGbcIjHC$ZJ`@eSH?Yu5Gg%eF=K|Cxc-W;b|=oUX8GnZa9f&wN|N{Aq?Kgep` zU$5V>gN>MMH^9fy9ikCvqrUH-o)arL_eg#y-hR)7AS5LM( zjy?kL2TV}N-va#4bnNerj@e6!ZFpASpeeA5Mj z$dro|=0tnMO#|a}h>Lov4vB1Ep0E?^qmkx#Hw%6cc~SLO>G*#jOe+c+Gki;FNjw#l zQB~uZaYxw_yo3@`C8w-XUQ}Uty&s!tX5&$XLsaSIx6h%C0_A5>cA5XsQ;H&vpc;VF z0Tg3AbkpL&nAN-lVp18w|9Ik-nQIpy$JoL&I_!#!y8hzocVi1Nr=D} zEhLi0To5Bfk;UqlFCHs_o78fx{uTp5I2snz=Xf4!mwcd1hhIKM0aa$0mk`-K7|c;a zq%yUP-inphoSU{FA}QGDc&^3>=U5DpS_xf&H-NR5fDVE-%Gm5pd-%`=3z~OacaaPF(#95gCe>!J7^JdmBoyL=z}LNIl@%?d7)FMsO6#Rg zIE!^3Y?_SU9lc+t)Wi+Lkbepb%mjeD!vJKj7Q6OHTkrB?fWcmOvO!OBNZs6RsOx_} zpQb>)VL_(`L!5Obq1=8x8qe$U*Li7TQx~B3Fx@vwQWr-Y+=Ea#iQ!3+5J~@CFS2&Z z^=u{vQaJ6Ft4@w!4ED^*4mmJ7L@yxIVzm2N;6 zxqLX|De3R40pyLU8n>Z$AJV$2+avWwFFI&cWUv%E_A{cfop5yAdY4@gR@yhF3pI@I z3D?3q_)vz`RLYmmHU&#;C=$V2xIf&cXf;}BfBo`a>NivtAL%RM1US23l5BF#z5?q7 zDNAJ3RUB5Tz1Naw&ZPyCZ+r+qRsC<>bJ`DQ4=WreQcx`=J0&UDaayp`%*eAo%xfv< z{kr<UuvWAO%l46snx05ObGU(U%;CJqmK6~HWw>Z6l8B`J!fkpotvHoHC? zgpKy+)l9hQ5nbC}fT4)E*QUiqVT~(O=9}9n?->G8K_jOU(!nq|fzbvatl{p+^{HQy zfreBJXu zv7>V}vdrP4ezrLvad$jIBNDd2&M_eJ8vpHE{Qc`^D;-sXWGhE4fOTq7>2|Bu+1T8y zMf{d5HG`DTIYRoncxEc7juEEKo~*va_T6YmP%A50A9DR+f>;(vw%G95i+cgI_%z8< zsDY&xH8!cJ!Dru8gvx_9ACA9`fn48C8VpV{`XjIc4Gmj{|8i5v(4CzT*nVLE>&Wy& zV-V1ac0Gw7pGMnUtqIc^2|=9fw3%WP;&a2|0EVAl?Q!l1Il$leV`YXc40wZ{9{8X{ z;^IxT9pVGBfg#s2Z{)O}BD1x;UXQXxOQ$I)VSw8w1VY7?6D(lUoXkPc32p3fQ{LBE z7aAIoEQJat)s%QhReFgMTciW38Bj*vDMou zpa@IGkq$EPa%6faHLm&HFQ83YJb4{0{KWfvIvK2TQnlBXmP{#~7N)Hx(P&h_n*Q3; z$%k_|v9Z3xEqY5W zz6~uLgn3+xK$WomHU0AfYewLY{>fD89+cFjha1RP)vZ+pR``EWWJtBRb7XceQ_16#gX}}OzxzqZ3kUSg zzXCF@Ge(N;0<};gq;q1F)oT=l5a;&_u;t) ze&^?z;?{OGAxy;yz&S%MCnQ)b8(>z^#U7hxu|nV!1%(xXCT2!AiDy|6BP|wAQ|5BE z9ADG>@%Z)$WR>-59X^24tto_j_R>S|3)@(>BaC%yrVE&?$f<=UIHT6TUNg!6oOS+Q zlK#m?bK-)79nS~!4|YQp__{?%mq&D+NcI7TthX{F_})d_2jsnZ!7PX??@j{yF%^V{pHrFlBOplC+AP zN~EP*0u5s*Kv?Du@f;4NywPWlPF1uB-cjXp{tD$ zG)j^vC$Z>rO39%9fX#-C7az}w+uJ;_#LH)E*s;1?ahAj#PMdAFp`qrtMTA=p!9?o_ zg8&)~Su9ay5s$N3`>sHOAj`n0OUVgO3T{wVkz#tWM=VQi(Nwc^iq=dq@_GKJ$Dr@s z8}3ZC&fEN7bH;NwsL#tw2VQJhuO7lnag;3}5zhurPpkYpoliamGGA=(`|T{Hjt*bC z@;9->cB7xFD@$_?@D}#=Y&EJK-b)ory608&HF@QlO1kQL3JX!Ps*b;@7X~_NOsW6D z#;cJ>;aQAsZJ&3%y&be|;1BWe1pnT^hxqs$`X0Yke;oS3S^5@JBId$NXEo|+r8!m8 z%_RHiJL{{E_^r3!!$}?WCW$P`{Di#35#3s90DVL`(pe~EHwl?&7>5jEu|1V6k~WIY zR11^qEFGFS;ullBC#flr54SgP+ks26sf9(KcQ?%USUfH0f^DOoudVPYlgE|hr$Vf& z*C#0YhB2Lc2%1znX?5p|52j*=Eo>vzoNtx@>hA6i0SJ@&0G~}?3iP&i6nPnItq~FN z^5PtI4dR+Y>n+>y~#9u)D zpZxLRxO%nG@4#7)Pl@;9*G4$%5?=3u1r>xTfzcdiKKHEAbNf=f)0(rigm|p0I5;P) zriM4UAYNMjB)6zpSCyk*UaTRz$Rww-NMBjp{LfV;jSLw^)FC3p`Lf;D|8VGhc{-up zu1}maJx<&%NdRj8=izh9MSF7O55z%J?9rxliQ#V2@_!J5uT!k?=ufHJia$Bcsl?<{anW|UAIBdb|?@{?V;>+2FEInsShVlOVh zr%Y&kb(%5@Q}!((I>@6@tA7xQ@!*Hw0an@in0>b^1{W?m56}0F^*fTT>j83Jz)9u8 z?Fzi_w~gW!o5G3^v96cbJm(LfxUJBC85Fij)>rj8sInm@23D{ zoyLu`z?1dUd!LU3*N`4y(~)Y4p;N8S+U*J?lX5&=c(q*%M&qyiO*~qIE8EiIwYs`` z5Zq7p9We)(WW)%6;Dt_3E}f|^IxI0}h;%p+kRj`8%KaP4OCX}E~wN=$wR+(i~b%nIS%95v^hE7F=s+wB8 zsn!BCv9x(bKj7sAVfx3(@0!ijV*6u4x%Cg0utyY$L|Tc;;veG4Brs%pxptZmMXqDz z?Yh~63}8~@08>miRpB62RCrdY7jS`Sx9|1klLwl@(?*ICapOnr4&M^dMw_IlX~|)h zLIS253LAE{^68+7Rl;oe;|>k+8izzKImMzZ_@$@-mg++n)6K^iQji1ss114;Kvcz< zSw^#{KFIah#{-G5_c`F9CWhAi5pXQV%X1=GKql2vF#)cXcC4yqIo4o0-e4n%ssuvp z$RO%BCk^1%dk9%q5Ply#1BFzgt#{x71i(=`=PU)6)&jNrz}xKN3A~wFmjjKsJJ#4N zDN)ZNV*`A9Jw_)jM!&)JRvv-2ZQQW+IoIY2ODicg3_T@uv80G>3%ovTwBdIsp#fe- z!#Fgu8r-28T+y`xYNsNq+#zOs<}}1R?kD6-nlv7`5&xrFUPfS4eWCWp_dU)puZ~B% z?ag68x*A*2=gfSzLnezQlbT3j;WN0CSjpk+3TyC_l_Ck9hX5rqqmeI%4q|%vpt|jv zg9-A$9*vyFX8gdkvHO1MEz0-`D<=N) zbBn)hE)RrCU4v$Io0%E=+hQ6gK*7U);q*2qxOl`i$}ls>5ChQJaCvW=MIJ|~_B%Iz zj0Ta+1mT{iQ6eiCsuMW>5YR|m6V00OJoH1DcysAWHzxy-!8V7RKvJVZ-8#R`K>k+| z>s{==95e3Mk1m&9IS)1MDqfT!vs0~O$piMuvl%U!Nhu{gBh4C1P|V}W)h$*>psO-1 zO*`Qz#z?|4N_l(;Fo0dY5U*{LwAC~B^8wYzQiZXtEkRg8uyWYZ5tnY4$G88?U1d@_ zi#a*OUk3u8iEWN1={#|HvJ^rIWG<*;QnB@ajOo;x}m^^8c~|FF(zP$iDDc{ zLK3h|BvHk`%M1cC{m65IviUJ}U+1Gj&&y*k#w_o{6)T9bXZti3mQIW_L5g%~QH7Ji zVoF>g6}?y@ZjvY<*K1|N#X8rpq$P2d^2Sjk1x1J{3Hu5}`3O7~Q9UlC04(?%I_?w` zF(porOy?TVIcyoEW^?9|cI2QDM^sqQ_<9#nOYZIM%g(ft(cu1}vJ|l%!eJrgaL4SJ zE6mth2X@8?(mBTJi$B|gB3KE9h8)Zij!T(HRV{bQi{(`odk+~{XP;TW1$8qjVq zO&zrfrkF}*j3Ru`c0_ZmYfOj1rNfU96fweF(nBa_gbg5II~`^5r89F{VPee-Wf>LJ z8ohbpqbfC8PnRk;J~wr9)GF1DwK{4mCNz~&dzH_>d3Bm_G|5Ii6K z37`uDjS1pP13^Ucg;bFMSmJ;aW{}D8fYT9lpDAs9EaQ(G;?VF11;~QI=TU8h`*wS7 z>+d1JhQcsZNmS->Qz)s&W{}cA-^3Ll5c%-p_ zl;ScQIo3Y%?-f)wTud4aBzgJ1+hB-6qkw8V7}{uO$wl-m3ZR*VRE`UHV$b;IGpgtP zhH7Wag&oV907cv$loQ$B5?NjC&V((?MBwe9CjjN+=1*-c4CJIn2_B%(09e8)EC6>c zqcjX4C1wlsW{Y)E{)tuK9tRxghOjQ#cWAN2Wp>=uqdwt9tQsT0JCeu0NOC%QvnuNm zmQ#5-6_l_W+mUMtMsJcmo*mph0y#M3FqjE5G@u!<{Zt%3oq^BipT*T(-dAVnHoXIp z=+$oDiQtIQae)HMDcSTpo&2i`{gF?Rvw2|&8mOmx{BHNts0Sds#XUFoei@W(T@szT zL3PdlRuoGFN&@r7Lkr7QQh@dXW z(aEBG;a?rdy42af%()s=!b^N&d_i)LL;H2?_2dF7#b}cM`U{9tY#JY4QBQXv<-K@r z5}%%MN{{}5SEUqr!=0$@OuNToIDMLOisaZJiCrC8vTqs;ZcEOD6S`zZAuUF6+ArrGGoC(q9|#!(5Pds>%B| zj;p5&bU{(saY1>)-76-7)nRk1D{XQ5oH0w z+O_n&Sv|+z)2q)*#>gxGFVbhf42!w3CWrv=>eC|Y+7Q_T-Apa;CogOYR>spYA1v;_ z!<Ail_iAsZUbrY%?I zm8{Wyl2Cvd&Vly30vLue6PeM6-T%wpd+gBEL~*3R+G#shQMem*x4RYU{|g=au{T(E3Wut+Jh0yF1te_OC6sH$3S>8JvZkKQZ@J3QJ+ zR`AjhcUX~Z+aAyo57@g<;NUVjBMYgRG55Tk7gm{!{S=^y8D zA&h2im>l^JKlxzbdI2{FcRT$3*ha_Iob~HY`7U!yatuC!{KZ#{bsiOKe`$jQb%oU9 z!R{46z`U-p&_-yS3roA83Pg)4hf-^0!HIs$ZK?f3t%)u$rD?fNvcr24sXM0Y! z#G%$bbd-f1EMG zX#rzsR_Z&r!=2W6Tgd8Ke`JxlSBy z!kZTTwa9ku-upH?Y+d^yrGFgl%ueoh{~4#_J;NN%bi=$nPiJrHhL2D4!TY<3k+{z^ zsqZQI`?pTPl*(dq)sYEl+=>b!DJr`EP_($w(bMs^8Xh|IZgd5mMfsfveYqikWx9c+ zK%c$7O;Owe@psBcd7XF?{BFmd-j2pfBLn^n7l4<&%W-00%@!Mr!!qf;+Apf4$@R1X zm65?IqynJRRO!>yi1_Sz&;3Yfo11thO!p`u=uVgQTUMHyx^;6~eo#C-q(FhU+7iww zFF$ojfJ+>2OKqVACN*$9)5%b?lf4TVwKDQpnR^w(YpmO^>R>0(V{9$g!<}29NXFFy z0gKgtR0v=aSo5nX*COmfm>sQ|Jv{l;yLPDl7y3}*yJ)1SF1ck9BnsI zpD%&wTSnR-QY`aU>~-sN38evKYl^8=3iR--p=HXayT!*ZsQb@-aSghE$JkDg=$Ewu z13bQ|js+Vh^%My!L9kW-EC->8i|JGlA(>~>0Q|7`iBTWL|IXegbe2xjYe1ag zGrJGl9hB8*V+T2`Kq$gyZ!H;}P;YwV4gk}A&9;6j`rN?zbMb+RD)oTUuJOYqU+?%}U{q%ZgROxF61 zMME4M@s^lKQimkV{*k|}!)vU0d62wr10K?&cnxv5i~A2m$Wahqj6heYCW z*YwZ$AhF=c0#8c@STb;GDbhGNu7R}ajW`CSrRY1Q>^`Q51c$)(c-O*fjJtmN+}=S3 zFqqwb#y=!cRBhcc$WjJpKJq+k^wp^+6-_}mr1m&7kshdi2z=ilhE=c-PFPX*^>Ilx zib1BDahlEVw$KIu$rhbK7ecAFhy9`H8$|g7#z%0 zCrx5GMpBB@DvXb;bL~pPRSo#+rj33xOcdeZDk?Cidjf@afGF^M+w`90dgARts$PZ$ z`iiEVQ04( z4sX+TyPkTWfy!o<+jo8i2f8r~x#C z!^9r!3xjH`(5`M$89!}bDb~8rpM6IUALKcc&ACjVm+4cH1rTKAvVpMBtP%`mc+tjM zY=<2~b&cQZbZde&^nJn(aA%3=1>3Vlh--I~q~MT4AZ4ovf`~#&F%l-J716(c1i}yA zI}lj*_kM0DsAyv;Y*}VN@DJOiL9EYL=T{x&Te@7v`Q@od!qqkX&M$P$KSRSKcm&!u z*#QI7m$P~IXiM4k2Z%{g)CS?N)oO(KOU*jlg{n~;98Anx(<#Bpy|3-a>xg2==Tn6* zuC48!_)d4EqNnXQHhv`wj9JMiGnJXm{O*_FFKNiY0HzdaEA3?`2`?I&v2qC6zjO;h z-p$06^d5I_Uzy4aK`x%{8Hx*FMEreFgqs7DdFLkXt)b@5Ad4=$o}i<_pW9ELI07%@ zNY@K8E0(2#;{FM{5SE}&3=U<)FrP^f4P=FiM9z;FagdX@bC*K05uMpV*)!7v=dS^3`aMcvXjsJl+`a z!n3cEA#N=oG{%R|H+e>FwjU{J_&=M1JDZ8K=+R2K#IVT|L_t%X2sCQd0SMFNbM(rx z(vYyZt#X8kpfzj50phrG4PnMA*oX;M zQGImcCBdQ;UgFGA$qjl78p${<6MXmpbNuWQ3`okPm}Xium2^H8MXvuNZ0RCoNDA~o z11}<_426>}-k&=v3^l5#5H`s7fP_ZuQmDmS!wr7ml&+Bc^F6)3T`AP$szBYkVE)8} z344%j%jD@xH(VBv^g1OO(=@vlT8*!p(bm=$rRGdzg`#O7bXF-kIAMh0+ z0)vAYzJY_s9q<|M0)t4ItfT+w312?bu~1xk89AFA&^p02VhXDJn7 z+au6;ovVxHze<(p4uW;4FVFAm{PRtioDxb!DTl!vN21{%PhR_(B@Jfb7#}9dVETjN zi$aVqlAY5c!0JPlrYPl07m+`D0@bY}+`K)^RgifarAYc3e6dH+W5Rz4oi+6Fm-y%L zaW0^<{nW^(pl&5iB6EVm0K9S>$`LZObZRGe*NTtYV+@n zy;=1$<~BlN=b$-z0}T=sWLOzl(f9l2*fn;sAMywuN<5y8D8ZmAR>;9FhF*4Eei1c* zEtN%*mtL<(zq`H!o4cbcT+TE^_~`)kbk#a<7Y{^p+oek>EB`}iHkikR6ddQdIl36$ zp98id)-ujaz%Ol>sEmplOTvjxDt{HQHor^^zg<8b`6QNHA^~#)#Y3O~{`h4EV{rJdz;^vAS zCZc2~-~U}|2N>bji5*YbG)_8fXxQiKTUA|EsH-iarQ#S_40+<(BJhN12Lgf^DkUnU zdNWShxw=+fq;6fbIB%qNXy(JB_Amgq68C+cF|!GzdKqAo;GbV|Fymw@L@$1j#J#S{ zu)&jRrokyeJGlCScKb!9iK5Cn6T^B!PRfW?Ri!wXi4B+K{b9z@s-sI^j{lg{amXS` zN6Sxjnq$MrDkX`L94x1co}<#W(o#{PtKj7QS+KD*e;UJtqs5BgEj^mQ)((VuAsLC7 z@C??VFUpvIdP&IK9K|VkG3S(g-Q6JeN5+B}s3gSgH8M-vMUY^&ep!);e{Xbm_l%{* zxy<7D`1z@!AYS7!Bo!u-!-4g$gko|kSkK>?X;68>O|O0~F~dx7X(Y5mz~aJb_9~D3 z9Rb6vq_FdSCcfOZ&DXywSXs0Tz~apoi93LJ(TzDO0n0UB0K*PLkk)pnxxL!v6U9!# z${>Pvz(dOVyPJyjLy5X}pE(gTUp3p%M!g_jO*f$lB=72c_wxftCE&@C(Xp}Y0BbtJ zSZVN98O4Cb67=zLz0JKAh`{JQhsPr&HOM%Txmi)is9~!J+*-P#g!G#XNx19z3jqKj z3=Vw!^HvB2XPAs)Q|ouFJD&*0xT$0)K>S5Vf75?^rAWinxXF-$Q)J+3>%7z1?DhsA zg%mik1l;)eVa$PNxqc|rmY^Ck{8%QA%<+tYO(5Y9dO&XYV@3bxtlRnNO+hK+(nnxG zn0)BL8pA^$S_+jZN1O`X6kr@5yf(uI83xE(gzU{7mV{1-3Xhb8bxyK*fygywxk5(ed$L{(FUdSM7*Fjh{eK?Lw;}) zrlIeJ8I@HcGE6atJTblCZhU?B2hV1w&S<|760ibBoF0#Bz_mkn@U|g}s%rlTOM?mc z`xQwfBHDd9dSOi3zTmWz zVm_ciw*AK5_4PJe-?=gH@n#F;dH8Q+KX1Am%u}eL{i9pAz0eA&@|CFrlQ8oY$Anhs zfq`ae=^EGRwR~{Cx+AOCH;|HWic=du*<0&eqfcw1)vZNW&gRzcPyVn2lL0be!c2Z< zL2b-mZ~i4=DTY)$#LoB5^X<+S)^cWu z|Dh5m$rPqNTNEew9lL?fxIo$}v67aBzvF}9@u?HY)!2w~c5mifEuj_RL{x^(CMedG zIJ!SVs74e`Z<$br8t>poXEc{*;IxkEkbfnC8BvkILyk3sG?WUfLBu?O`?z@H0;f3? z6yLqqf%ELD*}ucXHEekJXFp)%GSMUpMKU#;cT~x6rKXm?P-mskik>DKi`F5OM7PAy z_sKusleG?(QnABh>3w<{lHgF*vYJ;-1vW0uFH&62fqJy@h<?q8@MoD#oEmm>i@jh|!Vk>k*2_sfj+vAD@1nZ@ZAvc>%xcBu}Z zGFlJrGSZfw$sQFa;C&G}Q@n+~B&mGgj&(cLiM} zz|s=jU2<0r2QLXa?QP<=@4!3=`bW$dpV{Q%wuIEvh^)z3Uz0?w^x;1kph;FA(Tfrz z?KC7BrIt6ZeqqPL^T*w&p_J+@x-bza09V)rRq>Q6Qh1DKp_ptM;y7EIEk7*x%Re4> zdS$FZMyps}^Sl#TAPxZ$OfkqI(a=RC_l}bFZ{(^pu%+_2d0T4(Gc)`^qW;+|e)8Zl zljZ)X<@9qpsd$TzF`u;)wB$Xy{lf6{sOT;w*K4HVh|xUHENd@`3?@hr40QB{nLy{n zZS-gJx1X)9z@CQ>|2AUs7Rc(B$;~y(5AayPMl->P;)8wo!-a)HOEKyioDhZ=Xlx`# zhNO1AQH*hlX`@1f^@W<@C6j{t^80bdsF1QkD zlqp+!&8vLE&q(jE04e}x2^v0c`s>^ilp>kb7)F`Yh=j(F^NLPyCM2WBV z`eNlNWpQlr#?0Zu1tH3opx+n3IA^e1hSb`d9Wl4pVqqYShFyr;Gm;LX1Z`Fu*R54;HvWcadkx$C-s9zDpbaYtXgpl<--c& z@D4{VHIdZijk>*g>Y!qpcCz4)|m!iw0_neOqBJiyN-kr4x_I+pzfmxIoF!XU(e z+^D0O4y$@OAWksse*#ejuKFZ+MGi@U;c5u)vhuPX~_k;Ojm6+3ofajm7}FPV5sa@i87=@~}!y1#Qaq zDV%lIm>nT~E+TCt6lgDo&+o@*Wbv+b%R2pxU8YVh;*_UTAF3)NNeG_-!_Xi$f&3Ip z%pZtA3WT8#(;RYN(C?3Fr?-w?Zwy_ZoSPk+;gC}>w65LVCbqZl!=ZSt zGHEg%qelug9*LU^7JRaLODv4(Gb>jqwZ zbrVq(L)Rz#rOFIM5QL;7oo;eA(mh*`tRW#imL3WM5;e2S>bhiJaXR%cbco)1>rDs( zKuHU@GZ00QBC1JTm*k~R)<8PMV;Z>!a2#@pEz5yn*gR6se(#5M##wp!Q1tB)Zqd~HX!NA0DX!7$mYi;ba zKmWXeTet3^-5&9?#5i~v^4LYr(!7qoc73 z2Zds`K~W^gvXmL~N_eJoGC2y)S=rID9R7HE7&~yxA(L0rJ9ziqZT$S_zro&K2bSf) zG+hKi$h*U$D4rRif02#NMqdnyjcqa+J&AbQjv#P7x)C9eZ_5eEOE!e zFtMX3=ILYCCB)K>>~y#@_YP1CL%*x!1b8zyk?(~)hp{-&#vcT0-g2sC0Le&d|ss~Q<0}n zvuk3h_LDj#0hdRep8r@J@kv=-T|lK$M6sCTjyIoIXi%o`AR^n9&elqFbX2}!XTbLZ zo(cqnM_TW!yT>vW>~n<^b>!3TQHHdDe+RO!5e+VnoG>e2d{re)-@(nBJGgmshX>Q9 z>GJWW@tB}J5hvhZsx!{6>Fu|FLsR4A?~@Xt56AH-qn*oxRNMCG9SP1|8~N;a@rz&l z0mGpM+je=Xm<7Sij?X$vk7BP$!&JaaB+RA&=by35)X91B-S2*r+t-DK63^1I(hmu8 zfg}OaG~q!42|7HAdG7Pl(igE?!fDWue=f4PSmt#$23x5pGEcoSXUd`?VjKfHxA*7{ z?5is4>r1@OR4C-QV?G**6OPrriPMdrh)!88SrkS3GL~qgnF1i?wb!R%t#kQe!ukmY z0|UL@7>?udPHMu39uSQF#~c8jx2DfNJAm(pFinSNVLUIybm}1pVjldn$Iw^(oIMRX zSz4+<)ABU4Cvlt$Q51L&2Mdr{x%6?`f`7NExT;?*Dxyaxy)rQbD7Ir<_>u-bD7Ir e<}#P3L;fG(0) + $Pref::RPGDialog::MaxOptions=$RPGDialogEditorPref::MaxOptions; + +function getQuestion(%questionFile,%questionNumber) +{ + %file = new FileObject(); + if(isFile($Pref::RPGDialog::Client::QuestionPath@%questionFile@".dlq") && %file.openForRead($Pref::RPGDialog::Client::QuestionPath@%questionFile@".dlq")) + { + for(%i=1;%i<%questionNumber;%i++) + { + %file.readLine(); + if(%file.isEOF()) + return ""; + } + %question=%file.readLine(); + } + else if(isFile($RPGDialogEditorPref::QuestionPath@%questionFile@".dlq") && %file.openForRead($RPGDialogEditorPref::QuestionPath@%questionFile@".dlq")) + { + for(%i=1;%i<%questionNumber;%i++) + { + %file.readLine(); + if(%file.isEOF()) + return ""; + } + %question=%file.readLine(); + } + %file.close(); + %file.delete(); + return %question; +} + +function clientCmdCloseRPGDialog() +{ + Canvas.popDialog(RPGDialog); + RPGDialogQuestion.settext(""); + RPGDialogAnswer.settext(""); +} + +function clientCmdRPGDialogMessage(%sender,%senderName,%portrait,%npcFile,%questionNumber,%playerName) +{ + $RPGDialog::Sender=%sender; + $RPGDialog::questionNumber=%questionNumber; + onRPGDialogMessage(%npcFile,%questionNumber,%senderName,%portrait,%playerName); +} + +function onRPGDialogMessage(%npcFile,%questionNumber,%senderName,%portrait,%playerName) +{ + if(%portrait!$="" && isFile($RPGDialogEditorPref::PortraitsPath@%portrait)) + { + RPGDialogPortrait.setbitmap($RPGDialogEditorPref::PortraitsPath@%portrait); + } + else + { + RPGDialogPortrait.setbitmap($RPGDialogEditorPref::PortraitsPath@"unknown.png"); + } + + if(%npcFile!$="") + { + %QuestionAnswer=GetQuestion(%npcfile,%questionNumber); + + if(%QuestionAnswer!$="") + { + %AnswerStart=strPos(%QuestionAnswer,""); + %question=getSubStr(%QuestionAnswer,0,%AnswerStart); + %answer=getSubStr(%QuestionAnswer,%AnswerStart+13,strLen(%QuestionAnswer)); + } + else + { + %question="ERROR::Invalid Question!!\nnpcFile = "@%npcFile@"\nquestionNumber = "@%questionNumber; + } + } + + if (%question!$="") + { + %question=strreplace(%question,"<>",%senderName); + %question=strreplace(%question,"<>",%playerName); + + + if ((%soundStart = playRPGDialogSound(%question)) != -1) + %question = getSubStr(%question, 0, %soundStart); + + RPGDialogQuestion.settext(%question); + ChatHud.addLine($Pref::RPGDialog::ChatHudQuestionColor@%senderName@": "@StripMLControlChars(%question)); + } + + if (%answer!$="") + { + %answer=strReplace(%answer,"<>",%senderName); + %answer=strReplace(%answer,"<>",%playerName); + %answer=strReplace(%answer,"
","\n"); + + %line=%answer; + %i=1; + while(%i<=$Pref::RPGDialog::MaxOptions) //lets number the options + { + %Start=strpos(%line,""); + + if(%Start<0) + { + %i=$Pref::RPGDialog::MaxOptions+1; + } + else + { + %line=getSubStr(%line,%Start,strlen(%line)); + %End=strpos(%line,"
")+4; + %line=getSubStr(%line,%End,strlen(%line)); + %answer=strReplace(%answer,""," "@%i@" - "); + %i++; + } + } + + + RPGDialogAnswer.settext(%answer); + } + else + { + RPGDialogAnswer.settext("Continue..."); + } + RPGDialogAnswer.Visible=true; + + Canvas.pushDialog(RPGDialog); +} + +function RPGDialogAnswer::onURL(%this, %url) +{ +//same as RPGDialogQuestion::onURL, so just forward the call +RPGDialogQuestion::onURL(%this, %url); +} + +function RPGDialogQuestion::onURL(%this, %url) +{ + if(firstword(%url)!$="RPGDialog" && firstword(%url)!$="RPGDialogLink" && firstword(%url)!$="RPGDialogNoAnswer") + { + gotoWebPage( %url ); + } + else if(firstword(%url)$="RPGDialogLink") + { + %Answers=%this.gettext(); + %AnswerHeaderSize=strlen(""); + %AnswerStart=strpos(%Answers,"")+%AnswerHeaderSize; + %Answers=getSubStr(%Answers,%AnswerStart,strLen(%Answers)); + %AnswerEnd=strPos(%Answers,"")+4; + + ChatHud.addLine($Pref::RPGDialog::ChatHudAnswerColor@"You: "@StripMLControlChars(getSubStr(%Answers,0,%AnswerEnd))); + + CommandToServer('RPGDialogAnswer', $RPGDialog::Sender, $RPGDialog::questionNumber, "QL"@restwords(%url)); + + Canvas.popDialog(RPGDialog); + RPGDialogQuestion.settext(""); + RPGDialogAnswer.settext(""); + } + else if(firstword(%url)$="RPGDialogNoAnswer") + { + Canvas.popDialog(RPGDialog); + RPGDialogQuestion.settext(""); + RPGDialogAnswer.settext(""); + } + else + { + %Answers=%this.gettext(); + %Answers=strReplace(%Answers,restwords(%url)@" - ",""); + %AnswerHeaderSize=strlen(""); + %AnswerStart=strpos(%Answers,"")+%AnswerHeaderSize; + %Answers=getSubStr(%Answers,%AnswerStart,strLen(%Answers)); + %AnswerEnd=strpos(%Answers,"")+4; + + ChatHud.addLine($Pref::RPGDialog::ChatHudAnswerColor@"You: "@StripMLControlChars(getSubStr(%Answers,0,%AnswerEnd))); + + CommandToServer('RPGDialogAnswer', $RPGDialog::Sender, $RPGDialog::questionNumber, restwords(%url)); + + Canvas.popDialog(RPGDialog); + RPGDialogQuestion.settext(""); + RPGDialogAnswer.settext(""); + } +} + +function playRPGDialogSound(%message) +{ + // Search for wav tag marker. + %soundStart = strstr(%message, "~Sound:"); + if (%soundStart == -1) { + return -1; + } + + if(alxIsPlaying($RPGDialogSoundHandle)) + alxStop($RPGDialogSoundHandle); + + %sound = getSubStr(%message, %soundStart + 7, strLen(%message)); + $RPGDialogSoundHandle = alxPlay(%sound); + + return %soundStart; +} + +function SelectAnswer(%Number) +{ + if(strPos(RPGDialogAnswer.getText(),"")>=0) + RPGDialogAnswer.onURL("RPGDialog "@%Number); + else + OutOfRPGDialogFunction(%Number); +} \ No newline at end of file diff --git a/Templates/Modules/RPGDialog/Scripts/client/RPGDialogAudioProfiles.cs b/Templates/Modules/RPGDialog/Scripts/client/RPGDialogAudioProfiles.cs new file mode 100644 index 000000000..ddace2c60 --- /dev/null +++ b/Templates/Modules/RPGDialog/Scripts/client/RPGDialogAudioProfiles.cs @@ -0,0 +1,21 @@ +new SFXDescription(DialogSound) +{ + volume = 1.2; + isLooping= false; + is3D = false; + type = $MessageAudioType; +}; + +new SFXProfile(test) +{ + filename = "art/dialogs/sounds/test.wav"; + description = "DialogSound"; + preload = false; +}; + +new SFXProfile(test2) +{ + filename = "art/dialogs/sounds/test2.wav"; + description = "DialogSound"; + preload = false; +}; diff --git a/Templates/Modules/RPGDialog/Scripts/server/RPGDialog.cs b/Templates/Modules/RPGDialog/Scripts/server/RPGDialog.cs new file mode 100644 index 000000000..979a22d29 --- /dev/null +++ b/Templates/Modules/RPGDialog/Scripts/server/RPGDialog.cs @@ -0,0 +1,341 @@ +//----------------------------------------------------------------------------- +// RPGDialog - Presents the player with a question and several answers to select from +// Created by Nelson A. K. Gonsalves +//----------------------------------------------------------------------------- + +function getAction(%actionFile,%questionNumber) +{ + %file = new FileObject(); + if(isFile($Pref::Server::RPGDialog::ActionPath@%actionFile@".dla") && %file.openForRead($Pref::Server::RPGDialog::ActionPath@%actionFile@".dla")) + { + for(%i=1;%i<%questionNumber;%i++) + { + %file.readLine(); + if(%file.isEOF()) + return ""; + } + %action=%file.readLine(); + } + else if(isFile($RPGDialogEditorPref::ActionPath@%actionFile@".dla") && %file.openForRead($RPGDialogEditorPref::ActionPath@%actionFile@".dla")) + { + for(%i=1;%i<%questionNumber;%i++) + { + %file.readLine(); + if(%file.isEOF()) + return ""; + } + %action=%file.readLine(); + } + + %file.close(); + %file.delete(); + return %action; +} + +function RPGDialogMessageClient(%client,%sender,%npcFile,%questionNumber) +{ + %senderName=%sender.getshapename(); + %portrait=%sender.RPGDialogPortrait; + %playerName=%client.player.getshapename(); + + %sender.RPGDialogBusy=true; + %sender.RPGDialogTalkingTo=%client; + %sender.setAimObject(%client.player); + + commandToClient(%client,'RPGDialogMessage',%sender,%senderName,%portrait,%npcFile,%questionNumber,%playerName); + + CheckRPGDialogStatus(%client,%sender); +} + +function serverCmdRPGDialogAnswer(%client,%sender,%questionNumber,%answerNumber) +{ + if(%client==%sender.RPGDialogTalkingTo) + { + %npcFile=%sender.RPGDialogScript; + + %Actions=GetAction(%npcFile,%questionNumber); + + if(%Actions!$="") + { + %ActionHeaderSize=strlen("<"@%answerNumber@">"); + %ActionStart=strPos(%Actions,"<"@%answerNumber@">")+%ActionHeaderSize; + %Actions=getSubStr(%Actions,%ActionStart,strlen(%Actions)); + %ActionEnd=strPos(%Actions,""); + + if(%ActionEnd==-1) + return; + + %Actions=getSubStr(%Actions,0,%ActionEnd); + + while(%Actions!$="") + { + %ParamStart=strPos(%Actions,"(")+1; + %ParamEnd=strPos(%Actions,")")-%ParamStart; + %Param=getSubStr(%Actions,%ParamStart,%ParamEnd); + + %Action=getSubStr(%Actions,0,%ParamStart-1); + if(%Param!$="") + { + eval(%Action@"("@%Param@","@%client@","@%sender@",\""@%npcFile@"\");"); + } + else + { + eval(%Action@"("@%client@","@%sender@",\""@%npcFile@"\");"); + } + %Actions=getSubStr(%Actions,strlen(%Action)+%ParamEnd+2,strlen(%Actions)); + } + } + else + { + echo("ERROR::Invalid Question/Answer!!\nnpcFile = "@%npcFile@"\nquestionNumber = "@%questionNumber); + } + } +} + +function serverCmdRPGDialogRay(%client) +{ + %StartPos=%client.player.gettransform(); + %Eye = %client.player.getEyeVector(); + %EndPos = vectorScale(%Eye, -1); + %EndPos = vectorsub(%StartPos,%EndPos); + + InitContainerRadiusSearch(%EndPos, 2.5, $TypeMasks::PlayerObjectType); + + %rayCast=ContainerSearchNext(); + while(%rayCast != 0 ) + { + if(%rayCast.RPGDialogScript!$="") + { + if(!%rayCast.RPGDialogBusy) + { + RPGDialogMessageClient(%client, %rayCast, %rayCast.RPGDialogScript,%rayCast.RPGDialogStartQuestion); //start dialog. + return; + } + else + { + if(IsRPGDialogBusy(%rayCast)) + { + if(%client!=%raycast.RPGDialogTalkingTo) + { + messageClient(%client, '', %rayCast.RPGDialogBusyText, %raycast.RPGDialogTalkingTo.player.getShapeName()); + return; + } + else + return; + } + else + { + RPGDialogMessageClient(%client, %rayCast, %rayCast.RPGDialogScript,%rayCast.RPGDialogStartQuestion); //start dialog. + return; + } + } + } + %rayCast=ContainerSearchNext(); + } +} + +function IsRPGDialogBusy(%AiPlayerID) +{ + InitContainerRadiusSearch(%AiPlayerID.getTransform(), 5, $TypeMasks::PlayerObjectType); + %rayCastBusyCheck=ContainerSearchNext(); + while(%rayCastBusyCheck != 0 ) + { + if(%rayCastBusyCheck==(%AiPlayerID.RPGDialogTalkingTo).player) + { + return(true); + } + %rayCastBusyCheck=ContainerSearchNext(); + } + return(false); +} + +function CheckRPGDialogStatus(%Client,%Sender) //Checks if the player has moved since he started the dialog, moving too far from the sender will cancel the dialog +{ + InitContainerRadiusSearch(%Sender.getTransform(), 5, $TypeMasks::PlayerObjectType); + %rayCast=ContainerSearchNext(); + while(%rayCast != 0 ) + { + if(%rayCast==%Client.player) + { + schedule(1000,0,"CheckRPGDialogStatus",%Client,%Sender); + return; + } + %rayCast=ContainerSearchNext(); + } + CommandToClient(%client,'CloseRPGDialog'); + %Sender.RPGDialogBusy=false; + %Sender.RPGDialogTalkingTo=0; + %Sender.clearAim(); +} + +function SpawnTestNPC() +{ + %player = AIPlayer::spawn("a test NPC","359.973 304.759 217.766"); + %player.RPGDialogScript = "Test"; + %player.RPGDialogPortrait = "Test.png"; + %player.RPGDialogStartQuestion = 1; + %player.RPGDialogBusy = false; + %player.RPGDialogBusyText = 'Sorry but I\'m busy talking to %1 right now.'; + %player.RPGDialogTalkingTo = 0; + + return %player; +} + +function SpawnNPC(%Name,%Script,%Portrait,%startQuestion,%location) +{ + %player = AIPlayer::spawn(%Name,%location); + %player.RPGDialogScript = %Script; + %player.RPGDialogPortrait = %Portrait; + %player.RPGDialogStartQuestion = %startQuestion; + %player.RPGDialogBusy = false; + %player.RPGDialogBusyText = 'Sorry but I\'m busy talking to %1 right now.'; + %player.RPGDialogTalkingTo = 0; + + return %player; +} + +//------------------------------------------------------------------------------ +// RPGDialog Script Functions - functions bellow are made to be used by the +// dialog scripts. +// The commented out lines that start with are used when populating the action +// list on the RPGDialog Editor. +//------------------------------------------------------------------------------ + +//GotoQuestion(QuestionNumber) +function GotoQuestion(%questionNumber,%client,%sender,%npcFile) +{ + RPGDialogMessageClient(%client, %sender, %npcFile, %questionNumber); +} + +//CloseDialog() +function CloseDialog(%client,%sender,%npcFile) +{ + //sendind nothing to the client will close the dialog without anything else happening + %sender.RPGDialogBusy=false; + %sender.RPGDialogTalkingTo=0; +} + +//MoveTo(Position) +function MoveTo(%position,%client,%sender,%npcFile) +{ + %sender.setAimLocation(%position); + %sender.setMoveDestination(%position); + CloseDialog(%client,%sender,%npcFile); +} + +//KillPlayer() +function KillPlayer(%client,%sender,%npcFile) +{ + %client.player.kill("Sudden"); + CloseDialog(%client,%sender,%npcFile); +} + +//KillSender() +function KillSender(%client,%sender,%npcFile) +{ + %sender.kill("Sudden"); + CloseDialog(%client,%sender,%npcFile); +} + +//DamagePlayer(Amount) +function DamagePlayer(%DamageAmount,%client,%sender,%npcFile) +{ + %client.player.damage(0, %sender.getposition(), %damageAmount, "Sudden"); + CloseDialog(%client,%sender,%npcFile); +} + +//DamageSender(Amount) +function DamageSender(%DamageAmount,%client,%sender,%npcFile) +{ + %sender.damage(0, %sender.getposition(), %damageAmount, "Sudden"); + CloseDialog(%client,%sender,%npcFile); +} + +//TeleportPlayer(Position) +function TeleportPlayer(%Pos,%client,%sender,%npcFile) +{ + %client.player.setTransform(%Pos); + CloseDialog(%client,%sender,%npcFile); +} + +//TeleportSender(Position) +function TeleportSender(%Pos,%client,%sender,%npcFile) +{ + %sender.setTransform(%Pos); + CloseDialog(%client,%sender,%npcFile); +} + +//RenamePlayer(NewName) +function RenamePlayer(%NewName,%client,%sender,%npcFile) +{ + messageAllExcept(%client, -1, 'MsgPlayerRenamed', '\c1%1 is now known as %2.',%client.player.getshapeName(),%NewName); + messageClient(%client, 'MsgPlayerRenamed', '\c1You are now known as %1.',%NewName); + %client.player.setshapeName(%NewName); + CloseDialog(%client,%sender,%npcFile); +} + +//RenameSender(NewName) +function RenameSender(%NewName,%client,%sender,%npcFile) +{ + messageAll('MsgAIRenamed','\c1%1 is now known as %2.',%sender.getshapename(),%NewName); + %sender.setshapeName(%NewName); + CloseDialog(%client,%sender,%npcFile); +} + +//ChangeStartQuestion(QuestionNumber) +function ChangeStartQuestion(%NewQuestion,%client,%sender,%npcFile) +{ + %sender.RPGDialogStartQuestion=%NewQuestion; + CloseDialog(%client,%sender,%npcFile); +} + +//ChangeStartQuestionAndOpen(QuestionNumber) +function ChangeStartQuestionAndOpen(%NewQuestion,%client,%sender,%npcFile) +{ + %sender.RPGDialogStartQuestion=%NewQuestion; + RPGDialogMessageClient(%client, %sender, %sender.RPGDialogScript,%NewQuestion); +} + +//ChangeStartQuestionAndGoto(StartQuestion,GotoQuestion) +function ChangeStartQuestionAndGoto(%NewStartQuestion,%GoTo,%client,%sender,%npcFile) +{ + %sender.RPGDialogStartQuestion=%NewQuestion; + RPGDialogMessageClient(%client, %sender, %sender.RPGDialogScript,%GoTo); +} + +//ChangeScript(ScriptName,QuestionNumber) +function ChangeScript(%NewScript,%StartQuestion,%client,%sender,%npcFile) +{ + if(%NewScript!$="" && isFile($RPGDialogEditorPref::ActionPath@%NewScript@".dla")) + { + %sender.RPGDialogScript=%NewScript; + %sender.RPGDialogStartQuestion=%StartQuestion; + CloseDialog(%client,%sender,%npcFile); + } +} + +//ChangeScriptAndOpen(ScriptName,QuestionNumber) +function ChangeScriptAndOpen(%NewScript,%StartQuestion,%client,%sender,%npcFile) +{ + + if(%NewScript!$="" && isFile($RPGDialogEditorPref::ActionPath@%NewScript@".dla")) + { + %sender.RPGDialogScript=%NewScript; + %sender.RPGDialogStartQuestion=%StartQuestion; + RPGDialogMessageClient(%client, %sender, %NewScript,%StartQuestion); + } +} + +//ChangePortrait(NewPortrait) +function ChangePortrait(%NewPortrait,%client,%sender,%npcFile) +{ + %sender.RPGDialogPortrait=%NewPortrait; + CloseDialog(%client,%sender,%npcFile); +} + +//ChangePortraitAndGoto(NewPortrait,QuestionNumber) +function ChangePortraitAndGoto(%NewPortrait,%QuestionNumber,%client,%sender,%npcFile) +{ + %sender.RPGDialogPortrait=%NewPortrait; + RPGDialogMessageClient(%client, %sender, %sender.RPGDialogScript,%QuestionNumber); +} diff --git a/Templates/Modules/RPGDialog/gui/RPGDialog.gui b/Templates/Modules/RPGDialog/gui/RPGDialog.gui new file mode 100644 index 000000000..41ebf9258 --- /dev/null +++ b/Templates/Modules/RPGDialog/gui/RPGDialog.gui @@ -0,0 +1,156 @@ +new GuiControlProfile ("RPGDialogQuestionProfile") +{ + fontType = "Arial Bold"; + fontSize = 16; + fontColor = "44 172 181"; + fontColorLink = "255 96 96"; + fontColorLinkHL = "0 0 255"; + autoSizeWidth = true; + autoSizeHeight = true; +}; + +new GuiControlProfile ("RPGDialogAnswerProfile") +{ + fontType = "Arial Bold"; + fontSize = 16; + fontColor = "44 172 181"; + fontColorLink = "255 96 96"; + fontColorLinkHL = "0 0 255"; + autoSizeWidth = true; + autoSizeHeight = true; +}; + +new GuiControlProfile ("RPGDialogScrollProfile") +{ + opaque = false; + border = false; + borderColor = "0 255 0"; + bitmap = "./demoScroll"; + hasBitmapArray = true; +}; + +new GuiControlProfile ("RPGDialogBorderProfile") +{ + bitmap = "./chatHudBorderArray"; + hasBitmapArray = true; + opaque = false; +}; + +//--- OBJECT WRITE BEGIN --- +new GuiControl(RPGDialog) { + profile = "GuiModelessDialogProfile"; + horizSizing = "width"; + vertSizing = "height"; + position = "0 0"; + extent = "640 480"; + minExtent = "8 8"; + visible = "1"; + helpTag = "0"; + + new GuiControl() { + profile = "GuiDefaultProfile"; + horizSizing = "center"; + vertSizing = "relative"; + position = "120 260"; + extent = "400 220"; + minExtent = "8 8"; + visible = "1"; + helpTag = "0"; + + new GuiBitmapBorderCtrl(RPGDialogBorder) { + profile = "ChatHudBorderProfile"; + horizSizing = "width"; + vertSizing = "height"; + position = "0 0"; + extent = "400 220"; + minExtent = "8 8"; + visible = "1"; + helpTag = "0"; + useVariable = "0"; + tile = "0"; + + new GuiBitmapCtrl(RPGDialogBackground) { + profile = "GuiDefaultProfile"; + horizSizing = "width"; + vertSizing = "height"; + position = "8 8"; + extent = "384 212"; + minExtent = "8 8"; + visible = "1"; + helpTag = "0"; + bitmap = "./hudfill.png"; + wrap = "0"; + }; + new GuiScrollCtrl(RPGDialogScrollQuestion) { + profile = "RPGDialogScrollProfile"; + horizSizing = "width"; + vertSizing = "bottom"; + position = "89 8"; + extent = "303 94"; + minExtent = "8 8"; + visible = "1"; + helpTag = "0"; + willFirstRespond = "1"; + hScrollBar = "alwaysOff"; + vScrollBar = "dynamic"; + constantThumbHeight = "0"; + childMargin = "0 0"; + + new GuiMLTextCtrl(RPGDialogQuestion) { + profile = "RPGDialogQuestionProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "1 1"; + extent = "283 16"; + minExtent = "8 8"; + visible = "1"; + helpTag = "0"; + lineSpacing = "0"; + allowColorChars = "0"; + maxChars = "-1"; + }; + }; + new GuiScrollCtrl(RPGDialogScrollAnswer) { + profile = "RPGDialogScrollProfile"; + horizSizing = "width"; + vertSizing = "height"; + position = "8 100"; + extent = "384 110"; + minExtent = "8 8"; + visible = "1"; + helpTag = "0"; + willFirstRespond = "1"; + hScrollBar = "alwaysOff"; + vScrollBar = "dynamic"; + constantThumbHeight = "0"; + childMargin = "0 0"; + + new GuiMLTextCtrl(RPGDialogAnswer) { + profile = "RPGDialogAnswerProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "1 1"; + extent = "364 14"; + minExtent = "8 8"; + visible = "0"; + helpTag = "0"; + lineSpacing = "2"; + allowColorChars = "0"; + maxChars = "-1"; + }; + }; + new GuiBitmapCtrl(RPGDialogPortrait) { + profile = "GuiDefaultProfile"; + horizSizing = "right"; + vertSizing = "bottom"; + position = "8 8"; + extent = "80 94"; + minExtent = "8 2"; + visible = "1"; + helpTag = "0"; + wrap = "0"; + }; + }; + }; +}; +//--- OBJECT WRITE END --- diff --git a/Templates/Modules/RPGDialog/gui/dla/test.dla b/Templates/Modules/RPGDialog/gui/dla/test.dla new file mode 100644 index 000000000..749cb5ca6 --- /dev/null +++ b/Templates/Modules/RPGDialog/gui/dla/test.dla @@ -0,0 +1,3 @@ +GotoQuestion(2)<1>KillPlayer()<2>MoveTo("0 0 0")<3>TeleportPlayer("0 0 500")<4>TeleportPlayer("0 0 500")TeleportSender("0 0 600")<5>DamagePlayer(20)<6>GotoQuestion(3)<7>CloseDialog() +<1>RenameSender("Something Else")<2>GotoQuestion(1)<3>RenamePlayer("Something Else") +<1>ChangeStartQuestion(3)<2>ChangePortrait("unknown.png")<3>ChangePortraitAndGoto("unknown.png",3)<4>ChangeScript("test2",1)<5>ChangeScriptAndOpen("test2",1)<6>GotoQuestion(1)<7>ChangeStartQuestionAndOpen(1) diff --git a/Templates/Modules/RPGDialog/gui/dla/test2.dla b/Templates/Modules/RPGDialog/gui/dla/test2.dla new file mode 100644 index 000000000..a1947ca0d --- /dev/null +++ b/Templates/Modules/RPGDialog/gui/dla/test2.dla @@ -0,0 +1 @@ +<1>ChangeScript("test",1)<2>ChangeScriptAndOpen("test",3)<3>CloseDialog() diff --git a/Templates/Modules/RPGDialog/gui/dlq/test.dlq b/Templates/Modules/RPGDialog/gui/dlq/test.dlq new file mode 100644 index 000000000..d187d9e74 --- /dev/null +++ b/Templates/Modules/RPGDialog/gui/dlq/test.dlq @@ -0,0 +1,3 @@ +Hello <>, I'm <>, What do you want me to do? ~Sound:testKill me, please.
Run to the center of the world!
Teleport me!
Teleport us!
Damage me!
Something Else...
Nothing, see ya!
+Yes, I'm <>, do you want me to change my name to something else?Yes, please.
Nope...
Change my name instead!
+...~Sound:test2Change your start question to this question.
Change your portrait!
Change your portrait and come back to this question!
Change your script...
Change your script and open it
Go back to the first question.
Go back to the first question and set it as default.
diff --git a/Templates/Modules/RPGDialog/gui/dlq/test2.dlq b/Templates/Modules/RPGDialog/gui/dlq/test2.dlq new file mode 100644 index 000000000..9038037a1 --- /dev/null +++ b/Templates/Modules/RPGDialog/gui/dlq/test2.dlq @@ -0,0 +1 @@ +Hello <>, I'm <>, and this is the test2 script. What do you want to do?
Go back to the other script, please.
Change your script and open it on the 3rd question.
Nothing, see you later.
diff --git a/Templates/Modules/RPGDialog/gui/portraits/test.png b/Templates/Modules/RPGDialog/gui/portraits/test.png new file mode 100644 index 0000000000000000000000000000000000000000..763f933a89726a8d70cb44faa6a2f4ccbb22d68a GIT binary patch literal 2400 zcmc&$X;_n27XH4EB!nbL00{wRAS`96ECFRu**?|=0Y!usD*|C>Xl0S9AWIS?fD}pq z7hDEns{&({eL$-u8k9v5EU0WHgdmHuM+ibl`Z+)6|2*^K-gEAc`<#2;^PcnG^8tsy zQpM@w002<+p?L-(HUL>+SP0o2Gf+i{LB+ZGy8%Fbw*$Ip9y#lzd4;4MONvc9Lr;wX z+@g~rV<KXN6iVWF;^sb{Y>5pt>BJ5`qu8?mm8WkaYezb_+JEOQPbSY1DVCoDVCUNA ze0?}iu4H`W+K=<%SzeNGN9SvcEmy%WHN2PM@{R57`>sM8s_YS(2wUkk8R|3DKHLL2X{K3H#)o(E^k}TO&e` zh~F13@7Dc{UW>02zuU~?@o^Bb6# zewbVUUQ{HHOqd?0aqOi|=hF4ci&=rSY{=%}0;RtUiTDK01k%hqUEzMJ9R@al=J(b-AR73+_fFbK3bN7E;w(9f3jP>t}o{ zYv>4nlQm>bw0`&#ND^~isQF1+BdV36s@8rdYXexyd$R=YV3~wUb#pgLe(CAO{f1?W z@wu|1t7Sf=k)~N0&-#*uqqr1w?zM6v5aEyA0*+Hpe?R2+8Wu)c2@Dr2VnaZT<@JPV zIurOg>{u5lhCEi15BrQNg4sYTz5biF3vq zUz&xg-y?pdY;#qO`f~PgP+lkXraz|m1kKCeSc*W84>p#Vy=i*TzM*bnYIqcvlnG?x zqfKUo^?S;o-Yr9WUuF;J>s)GO!@&Vi;Vauo%pSbbo;`y+hNAirSA+v-9?%hAe4r~R z*16NgJlpf*29Kw|vvqd5Un)_^vm@zr43=_G>swA`*D*G9%tc;BY}Ggb110Sszyx$t z^f6ej`Ye*%f4daYuZv-{i`a#MW5e2dc?jwQ&V=vg9-naHylEuT>?eFBukW41NPV|)sHN+S@~I)pYG$274vtV36I{c(jse%6pbJb3ZK88st( ziq!y$qUW#km;GD%lO!wpY)b4qyLZ#g2!}tC^NYW6Jp&s9N=SN;H{ZhpDX>u#cwz-{%F@@*@eg==dS;hO3!pjs`&pO=Ih| zXzth1AV(C8{cTrhsK<5m{BQ0Dm%5u(VejOrlUy<7#)i7-PoXpPzVxT9rIQoPN(>=@ zo5|Gm&{%>!DaIWI$XR6Er2uSrSqR!Osp-5E_OgYe_3}SJYKxrbeZQHN*3av@2Fx z0G-}nmNrQ+P&R%kKRR`vbyj@&E`jOps{o>PCa=@^H__EZI#VgA%k*eH%${)-qv&K4nlLhkH-yS zV(MV0;UYa?CuqBH$SL3cKvrk04K;)nh8{(??IO3s>JhL~vqN;GYDidQUqE}R4h-B- z8*FNzPNiz58ldf>@@9ey_va`)dJXqUSgZMoX{39=$U&OR6R{K5Dj6LwXaPV^UdlWR zivLf8I!u8?*!ZOY0QXIOo>Tt^w=*~E&?v(^kz92Z6Ne!2yz2-#^;E1QEK^CL2wRWkQ=$v6@itso?rSgm!C0#;ML(EJogVM6vwA)3i zOB)lCPBS%m$|Dh*YqGykF^(N_O#Ei%x3B)%zx(4ozVGurKHu}r4Gs1sn=dqnAc*Ym z=N$&lP_X!>Sg^BF@h8B6kK+aLAV~gV72$*i(6-4wk;&l+yONIx55_{goe43qH2-*E zTx?jZaA#^#Lo6GDh>QHac@d)Sn74<<=q4s@umV+NpgPS2?8q@PNlV6xd!NfCaz2`> zAJLVw;DnwG6ACwQSu|>#9(APCaV$H!g*#ovz~zxRVxwegy19u3FN;1p(LdoLgl8;tWwXL|8<=?2~4c=KN!3cXR>i)tGo%(G9QHS%bM5l8>y{7Fs! zfFc1l*lu>2<)})pD_%t#rxD~n2VTa|KPFJPuF7YI-hOysnWVasiOoRz-e^(PPcp5i zer9~MEE*2h&m>*U%EHj3kzV3iWK<3798qkeTS={xOZw{iF&NHA^^c~s9dx2hK_a~b z=CNm`1uECHZ^W4x06WG;2+^b)E@We{yPu`ne8n{<>%dCQzC)VfM6)sG`g_)L@k7xE zb#{nEGa{5if8Njj5Zl%NG|S+Lmy!avmeg98r$5|-9DOkJ9ZhOuk2`R?igCMYxdG9k zT^4(%vyXYb46r(BVeNFoa!}n+%@00jD5QGnk>S^Jxvw#ugKFU=RO&9E+24V9P2Fu- z=6>`}&bV8Y;Zn*_WH=@T!-bfy7s)HOmK2`-F<7>tr1+R~kS7V`G9q7ne}UDD!ych5 z#_f@E(Vl@hfCn!V0#%~I57+D+rQf^%usr47WX+n&oA}w(SKjpn$63lxc~l3YDQ)eh zfF{poYI%C*=5LWy)Av_%cPuvXW1n9eebwhRnZk_-ZnZm-&RwuZG*X@0xI$o-r%4kW ze~9nF%LwhFf8&cveOhpM${A1n*m!f_gXf8d4;l>x&sbcdgPZa;wD$>VoLWW@LU>BhkWi5P>riM(F|%zYLsrHILM^l* zwxDP)g%jREl|l=>9f-5k!n+&Q*Z2QjL!e2CTXdALfYKF;8~X@ch`e;ZobZNzLTw-{l>j5>!CfSZj{=l*U>m#8Xb z9rIKl6$@c=vR*aVMC#rRL6`uSZgT9CFUfYd#WgO8s_VJapIJ7sX&XW{o#Q-ESHDfi zXc2W|764tIz@ZC?GgOk#N@XHM;ZBYv@^9K~hOwuUl1AxkLulAJzPuEfS>$+& zn=Ks&s>AnkR+j+V?uqN$PJ>KoX`*{(HCDXgb5zb8<-AA0C;LCb`FGmYD&XTx7B2+o zO}<$)&jAUXa!UCGTsw8o#|=cZj}1!DL&p%Eh#H>?QmL;`jZNAP5&_cO_Bz7dO4>y} z&8{-roEYvSSDV@VbxP8l|X&LE{83EQv+ zcBno5*4zMy3b6Q!-v7#x@jtN~!pv`X(9m`UdjNfUBP4|LaT~{KKGS04T3KP N^7je$u2?7d`9CpK?|T3M literal 0 HcmV?d00001 diff --git a/Templates/Modules/RPGDialog/sounds/test.wav b/Templates/Modules/RPGDialog/sounds/test.wav new file mode 100644 index 0000000000000000000000000000000000000000..fe0ee4b65c1bc307224c5383f3145c7d1ce041fa GIT binary patch literal 25818 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 U?q8WbmjC?Szw+oTrdMA1U!$UJCjbBd literal 0 HcmV?d00001 diff --git a/Templates/Modules/RealisticVFX/Datablocks/LifelikeEffectsPackExec.cs b/Templates/Modules/RealisticVFX/Datablocks/LifelikeEffectsPackExec.cs new file mode 100644 index 000000000..dd55efecd --- /dev/null +++ b/Templates/Modules/RealisticVFX/Datablocks/LifelikeEffectsPackExec.cs @@ -0,0 +1,21 @@ +//----------------------------------------------------------------------------- +// Lifelike Effects Pack Exec File +// +// This file executes all the scripts associated with the pack. +// Thanks for your support! +// +// Copyright Adam deGrandis 2012 +//----------------------------------------------------------------------------- + +exec ("./LifelikeEmitters.cs"); +exec ("./LifelikeExp_ComplexLarge.cs"); +exec ("./LifelikeExp_ComplexSmall.cs"); +exec ("./LifelikeExp_SimpleLarge.cs"); +exec ("./LifelikeExp_SimpleSmall.cs"); +exec ("./LifelikeExp_GroundHitLarge.cs"); +exec ("./LifelikeExp_GroundHitSmall.cs"); +exec ("./LifelikeExp_FirebombLarge.cs"); +exec ("./LifelikeExp_FirebombSmall.cs"); +exec ("./LifelikeExp_Flak.cs"); +exec ("./LifelikeExp_Flashbang.cs"); + diff --git a/Templates/Modules/RealisticVFX/Datablocks/LifelikeEmitters.cs b/Templates/Modules/RealisticVFX/Datablocks/LifelikeEmitters.cs new file mode 100644 index 000000000..58f37d58f --- /dev/null +++ b/Templates/Modules/RealisticVFX/Datablocks/LifelikeEmitters.cs @@ -0,0 +1,410 @@ +//----------------------------------------------------------------------------- +// Lifelike Effects Pack - Ambient Particle Emitters +// Copyright Adam deGrandis 2012 +// +// This file houses all the ambient emitters in the Lifelike Effects Pack. +// Thanks for your support! +// +//----------------------------------------------------------------------------- +//exec ("art/datablocks/LifelikeEffectsPack/LifelikeEmitters.cs"); + +//----------------------------------------------------------------------------- +// Smoke +//----------------------------------------------------------------------------- + +datablock ParticleData(LifelikeSmokeLargeBlackParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/smoke1"; + + gravityCoefficient = -0.2; + inheritedVelFactor = 0.00; + lifetimeMS = 4000; + lifetimeVarianceMS = 250; + spinRandomMin = -30; + spinRandomMax = 30; + + sizes[0] = 2; + sizes[1] = 4; + sizes[2] = 12; + + times[0] = 0.0; + times[1] = 0.2; + times[2] = 1.0; + + colors[0] = "0.1 0.1 0 0.1"; + colors[1] = "0.7 0.7 0.6 1"; + colors[2] = "1 0.9 0.8 0.0"; + + windCoefficient = 1; + +}; + +datablock ParticleEmitterData(LifelikeSmokeLargeBlackEmitter) +{ + ejectionPeriodMS = 130; + periodVarianceMS = 50; + ejectionVelocity = 1.0; + velocityVariance = 0.0; + thetaMin = 0.0; + thetaMax = 90.0; + phiReferenceVel = 0; + phiVariance = 360; + particles = LifelikeSmokeLargeBlackParticle; + blendStyle = "NORMAL"; + ejectionOffset = 0.5; +}; + + +datablock ParticleData(LifelikeSmokeSmallBlackParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/smoke1"; + + gravityCoefficient = -0.1; + lifetimeMS = 2000; + lifetimeVarianceMS = 500; + spinRandomMin = -30; + spinRandomMax = 30; + + sizes[0] = 1; + sizes[1] = 2; + sizes[2] = 3; + + times[0] = 0.0; + times[1] = 0.2; + times[2] = 1.0; + + colors[0] = "0.1 0.1 0 0.1"; + colors[1] = "0.7 0.7 0.6 0.5"; + colors[2] = "1 0.9 0.8 0.0"; + + windCoefficient = 1; + +}; + +datablock ParticleEmitterData(LifelikeSmokeSmallBlackEmitter) +{ + ejectionPeriodMS = 150; + periodVarianceMS = 50; + ejectionVelocity = 1.0; + velocityVariance = 0.0; + thetaMin = 0.0; + thetaMax = 50.0; + phiReferenceVel = 0; + phiVariance = 360; + particles = LifelikeSmokeSmallBlackParticle; + blendStyle = "NORMAL"; + ejectionOffset = 0.1; +}; + + + + +datablock ParticleData(LifelikeSmokeLargeWhiteParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/smoke2"; + + gravityCoefficient = -0.2; + inheritedVelFactor = 0.00; + lifetimeMS = 4000; + lifetimeVarianceMS = 250; + spinRandomMin = -30; + spinRandomMax = 30; + + sizes[0] = 2; + sizes[1] = 4; + sizes[2] = 12; + + times[0] = 0.0; + times[1] = 0.2; + times[2] = 1.0; + + colors[0] = "0.1 0.1 0 0.1"; + colors[1] = "0.7 0.7 0.6 1"; + colors[2] = "1 0.9 0.8 0.0"; + + windCoefficient = 1; + +}; + +datablock ParticleEmitterData(LifelikeSmokeLargeWhiteEmitter) +{ + ejectionPeriodMS = 130; + periodVarianceMS = 50; + ejectionVelocity = 1.0; + velocityVariance = 0.0; + thetaMin = 0.0; + thetaMax = 90.0; + phiReferenceVel = 0; + phiVariance = 360; + particles = LifelikeSmokeLargeWhiteParticle; + blendStyle = "NORMAL"; + ejectionOffset = 0.5; +}; + + +datablock ParticleData(LifelikeSmokeSmallWhiteParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/smoke2"; + + gravityCoefficient = -0.1; + lifetimeMS = 2000; + lifetimeVarianceMS = 500; + spinRandomMin = -30; + spinRandomMax = 30; + + sizes[0] = 1; + sizes[1] = 2; + sizes[2] = 3; + + times[0] = 0.0; + times[1] = 0.2; + times[2] = 1.0; + + colors[0] = "0.1 0.1 0 0.1"; + colors[1] = "0.7 0.7 0.6 0.5"; + colors[2] = "1 0.9 0.8 0.0"; + + windCoefficient = 1; + +}; + +datablock ParticleEmitterData(LifelikeSmokeSmallWhiteEmitter) +{ + ejectionPeriodMS = 150; + periodVarianceMS = 50; + ejectionVelocity = 1.0; + velocityVariance = 0.0; + thetaMin = 0.0; + thetaMax = 70.0; + phiReferenceVel = 0; + phiVariance = 360; + particles = LifelikeSmokeSmallWhiteParticle; + blendStyle = "NORMAL"; + ejectionOffset = 0.1; +}; + + + +//----------------------------------------------------------------------------- +// Fire +//----------------------------------------------------------------------------- + + +datablock ParticleData(LifelikeFireSmallParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/flame1"; + gravityCoefficient = "-0.2"; + lifetimeMS = 1000; + lifetimeVarianceMS = 200; + useInvAlpha = true; + spinRandomMin = -140.0; + spinRandomMax = 140.0; + + sizes[0] = "0.5"; + sizes[1] = "1"; + sizes[2] = "0.7"; + + colors[0] = "0.8 0.6 1 0.5"; + colors[1] = "0.8 0.4 0 1"; + colors[2] = "0.8 0.4 0 0"; + + times[0] = 0.0; + times[1] = 0.2; + times[2] = 1.0; +}; + + +datablock ParticleEmitterData(LifelikeFireSmallEmitter) +{ + ejectionPeriodMS = 70; + periodVarianceMS = 30; + + ejectionVelocity = 0.3; + velocityVariance = 0.2; + + thetaMin = 0.0; + thetaMax = 70.0; + + ejectionOffset = 0.15; + + particles = "LifelikeFireSmallParticle"; + blendStyle = "ADDITIVE"; +}; + + + +datablock ParticleData(LifelikeFireBigParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/flame1"; + gravityCoefficient = "-0.2"; + lifetimeMS = 1400; + lifetimeVarianceMS = 500; + useInvAlpha = true; + spinRandomMin = -140.0; + spinRandomMax = 140.0; + + sizes[0] = "1"; + sizes[1] = "2"; + sizes[2] = "1.5"; + + colors[0] = "0.8 0.6 1 0.5"; + colors[1] = "0.8 0.4 0 0.9"; + colors[2] = "0.8 0.4 0 0"; + + times[0] = 0.0; + times[1] = 0.2; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(LifelikeFireBigEmitter) +{ + ejectionPeriodMS = 70; + periodVarianceMS = 30; + + ejectionVelocity = 0.5; + velocityVariance = 0.0; + + thetaMin = 0.0; + thetaMax = 70.0; + + ejectionOffset = 0.5; + + particles = LifelikeFireBigParticle; + blendStyle = "ADDITIVE"; +}; + + + +//----------------------------------------------------------------------------- +// Embers +//----------------------------------------------------------------------------- + + +datablock ParticleData(LifelikeEmbersSmallParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/ember1"; + gravityCoefficient = "-0.2"; + lifetimeMS = 1500; + lifetimeVarianceMS = 200; + useInvAlpha = true; + spinRandomMin = -140.0; + spinRandomMax = 140.0; + + sizes[0] = "0.5"; + sizes[1] = "1"; + sizes[2] = "0.7"; + + colors[0] = "1 0.9 0.8 0.5"; + colors[1] = "1 0.9 0.8 1"; + colors[2] = "0.8 0.4 0 0"; + + times[0] = 0.0; + times[1] = 0.2; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(LifelikeEmbersSmallEmitter) +{ + ejectionPeriodMS = 70; + periodVarianceMS = 30; + + ejectionVelocity = 0.3; + velocityVariance = 0.2; + + thetaMin = 0.0; + thetaMax = 70.0; + + ejectionOffset = 0.15; + + particles = LifelikeEmbersSmallParticle; + blendStyle = "ADDITIVE"; +}; + + +datablock ParticleData(LifelikeEmbersBigParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/ember1"; + gravityCoefficient = "-0.2"; + lifetimeMS = 2000; + lifetimeVarianceMS = 500; + useInvAlpha = true; + spinRandomMin = -140.0; + spinRandomMax = 140.0; + + sizes[0] = "1"; + sizes[1] = "2"; + sizes[2] = "1.5"; + + colors[0] = "1 0.9 0.8 0.5"; + colors[1] = "1 0.9 0.8 1"; + colors[2] = "0.8 0.4 0 0"; + + times[0] = 0.0; + times[1] = 0.2; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(LifelikeEmbersBigEmitter) +{ + ejectionPeriodMS = 70; + periodVarianceMS = 30; + + ejectionVelocity = 0.5; + velocityVariance = 0.0; + + thetaMin = 0.0; + thetaMax = 70.0; + + ejectionOffset = 0.5; + + particles = LifelikeEmbersBigParticle; + blendStyle = "ADDITIVE"; +}; + + + +//----------------------------------------------------------------------------- +// Special +//----------------------------------------------------------------------------- + +datablock ParticleData(LifelikeFlareSmokeParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/smoke2"; + + gravityCoefficient = -0.2; + inheritedVelFactor = 0.00; + lifetimeMS = 4000; + lifetimeVarianceMS = 250; + spinRandomMin = -30; + spinRandomMax = 30; + + sizes[0] = 2; + sizes[1] = 4; + sizes[2] = 12; + + times[0] = 0.0; + times[1] = 0.2; + times[2] = 1.0; + + colors[0] = "1 0.1 0.1 0.1"; + colors[1] = "1 0.3 0.3 1"; + colors[2] = "1 0.6 0.6 0.0"; + + windCoefficient = 1; + +}; + +datablock ParticleEmitterData(LifelikeFlareSmokeEmitter) +{ + ejectionPeriodMS = 130; + periodVarianceMS = 50; + ejectionVelocity = 1.0; + velocityVariance = 0.0; + thetaMin = 0.0; + thetaMax = 90.0; + phiReferenceVel = 0; + phiVariance = 360; + particles = LifelikeFlareSmokeParticle; + blendStyle = "NORMAL"; + ejectionOffset = 0.5; +}; \ No newline at end of file diff --git a/Templates/Modules/RealisticVFX/Datablocks/LifelikeExp_ComplexLarge.cs b/Templates/Modules/RealisticVFX/Datablocks/LifelikeExp_ComplexLarge.cs new file mode 100644 index 000000000..0940da9df --- /dev/null +++ b/Templates/Modules/RealisticVFX/Datablocks/LifelikeExp_ComplexLarge.cs @@ -0,0 +1,238 @@ +//----------------------------------------------------------------------------- +// Lifelike Effects Pack - Large Complex Explosion +// Copyright Adam deGrandis 2012 +// +// Thanks for your support! +// +//----------------------------------------------------------------------------- +//exec ("art/datablocks/LifelikeEffectsPack/LifelikeExp_ComplexLarge.cs"); + + +//----------------------------------------------------------------------------- +// Emitters +//----------------------------------------------------------------------------- + +datablock ParticleData(LifelikeComplexLargeSmokeParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/smoke1"; + gravityCoefficient = -0.05; + lifetimeMS = 3300; + lifetimeVarianceMS = 200; + spinRandomMin = -50.0; + spinRandomMax = 50.0; + + colors[0] = "0.1 0.1 0 1"; + colors[1] = "0.7 0.7 0.6 1"; + colors[2] = "1 0.9 0.8 0.0"; + + sizes[0] = 4; + sizes[1] = 8; + sizes[2] = 12; + + times[0] = 0.0; + times[1] = 0.1; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(LifelikeComplexLargeSmokeEmitter) +{ + ejectionPeriodMS = 10; + periodVarianceMS = 5; + ejectionVelocity = 2; + velocityVariance = 0; + thetaMin = 0; + thetaMax = 120; + phiReferenceVel = 0; + phiVariance = 360; + ejectionoffset = 2; + particles = "LifelikeComplexLargeSmokeParticle"; + blendStyle = "NORMAL"; +}; + + +datablock ParticleData(LifelikeComplexLargeFireballParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/fireball"; + gravityCoefficient = -0.3; + lifetimeMS = 700; + lifetimeVarianceMS = 100; + spinRandomMin = -100.0; + spinRandomMax = 100.0; + + colors[0] = "1 0.9 0.8 1"; + colors[1] = "0.8 0.4 0.0 1"; + colors[2] = "0.8 0.4 0.0 0"; + + sizes[0] = 1; + sizes[1] = 7; + sizes[2] = 4; + + times[0] = 0.0; + times[1] = 0.3; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(LifelikeComplexLargeFireballEmitter) +{ + ejectionPeriodMS = 5; + periodVarianceMS = 3; + ejectionVelocity = 3; + velocityVariance = 2; + thetaMin = 0; + thetaMax = 120; + phiReferenceVel = 0; + phiVariance = 360; + ejectionoffset = 3; + + particles = "LifelikeComplexLargeFireballParticle"; + blendStyle = "ADDITIVE"; +}; + +datablock ParticleData(LifelikeComplexLargeGlowParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/flame1"; + gravityCoefficient = -0.3; + lifetimeMS = 400; + lifetimeVarianceMS = 100; + spinRandomMin = -200.0; + spinRandomMax = 200.0; + + colors[0] = "0.9 0.8 1 0.4"; + colors[1] = "0.8 0.4 0.0 0.1"; + colors[2] = "0.8 0.4 0.0 0"; + + sizes[0] = 7; + sizes[1] = 11; + sizes[2] = 5; + + times[0] = 0.0; + times[1] = 0.3; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(LifelikeComplexLargeGlowEmitter) +{ + ejectionPeriodMS = 20; + periodVarianceMS = 5; + ejectionVelocity = 3; + velocityVariance = 2; + thetaMin = 0; + thetaMax = 120; + phiReferenceVel = 0; + phiVariance = 360; + particles = "LifelikeComplexLargeGlowParticle"; + blendStyle = "ADDITIVE"; +}; + +datablock ParticleData(LifelikeComplexLargeSparks2Particle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/spark2"; + dragCoefficient = 4; + gravityCoefficient = 1; + lifetimeMS = 1500; + lifetimeVarianceMS = 500; + spinRandomMin = -0.0; + spinRandomMax = 0.0; + + colors[0] = "1 1 1 0.0"; + colors[1] = "1.0 0.9 0.8 1"; + colors[2] = "0.9 0.8 0.7 0"; + + sizes[0] = 4.0; + sizes[1] = 3.0; + sizes[2] = 1.0; + + times[0] = 0.0; + times[1] = 0.2; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(LifelikeComplexLargeSparks2Emitter) +{ + ejectionPeriodMS = 2; + periodVarianceMS = 1; + ejectionVelocity = 70.0; + velocityVariance = 10.0; + ejectionOffset = 0; + thetaMin = 0; + thetaMax = 70; + phiReferenceVel = 0; + phiVariance = 360; + particles = "LifelikeComplexLargeSparks2Particle"; + blendStyle = "ADDITIVE"; +}; + +datablock ParticleData(LifelikeComplexLargeSparks1Particle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/spark3"; + lifetimeMS = 350; + lifetimeVarianceMS = 20; + useInvAlpha = false; + + colors[0] = "1.0 0.9 0.8 1"; + colors[1] = "1.0 0.9 0.8 1"; + colors[2] = "0.8 0.4 0 0.0"; + + sizes[0] = 2; + sizes[1] = 7; + sizes[2] = 12; + + times[0] = 0.0; + times[1] = 0.5; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(LifelikeComplexLargeSparks1Emitter) +{ + ejectionPeriodMS = 20; + periodVarianceMS = 5; + ejectionVelocity = 35; + velocityVariance = 10; + thetaMin = 0; + thetaMax = 70; + phiReferenceVel = 0; + phiVariance = 360; + ejectionoffset = 0; + orientOnVelocity = true; + orientParticles = true; + particles = "LifelikeComplexLargeSparks1Particle"; + blendStyle = "ADDITIVE"; +}; + + + +//----------------------------------------------------------------------------- +// Explosions +//----------------------------------------------------------------------------- + + +datablock ExplosionData(LifelikeComplexLargeExplosion) +{ + //soundProfile = YourSoundDatablock; + lifeTimeMS = 200; + + // Volume + particleEmitter = LifelikeComplexLargeGlowEmitter; + particleDensity = 40; + particleRadius = 2; + + // Point emission + emitter[0] = LifelikeComplexLargeSmokeEmitter; + emitter[1] = LifelikeComplexLargeFireballEmitter; + emitter[2] = LifelikeComplexLargeSparks1Emitter; + emitter[3] = LifelikeComplexLargeSparks2Emitter; + + shakeCamera = true; + camShakeFreq = "10.0 11.0 9.0"; + camShakeAmp = "20.0 20.0 20.0"; + camShakeDuration = 1.5; + camShakeRadius = 20.0; + + lightStartRadius = 20.0; + lightEndRadius = 0.0; + lightStartColor = "1 0.9 0.8"; + lightEndColor = "0.8 0.4 0.0"; + lightStartBrightness = 2.0; + lightEndBrightness = 0.0; + +}; \ No newline at end of file diff --git a/Templates/Modules/RealisticVFX/Datablocks/LifelikeExp_ComplexSmall.cs b/Templates/Modules/RealisticVFX/Datablocks/LifelikeExp_ComplexSmall.cs new file mode 100644 index 000000000..693090c14 --- /dev/null +++ b/Templates/Modules/RealisticVFX/Datablocks/LifelikeExp_ComplexSmall.cs @@ -0,0 +1,238 @@ +//----------------------------------------------------------------------------- +// Lifelike Effects Pack - Small Complex Explosion +// Copyright Adam deGrandis 2012 +// +// Thanks for your support! +// +//----------------------------------------------------------------------------- +//exec ("art/datablocks/LifelikeEffectsPack/LifelikeExp_ComplexSmall.cs"); + + +//----------------------------------------------------------------------------- +// Emitters +//----------------------------------------------------------------------------- + +datablock ParticleData(LifelikeComplexSmallSmokeParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/smoke1"; + gravityCoefficient = -0.02; + lifetimeMS = 2000; + lifetimeVarianceMS = 200; + spinRandomMin = -50.0; + spinRandomMax = 50.0; + + colors[0] = "0.1 0.1 0 1"; + colors[1] = "0.7 0.7 0.6 1"; + colors[2] = "1 0.9 0.8 0.0"; + + sizes[0] = 2; + sizes[1] = 4; + sizes[2] = 6; + + times[0] = 0.0; + times[1] = 0.1; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(LifelikeComplexSmallSmokeEmitter) +{ + ejectionPeriodMS = 15; + periodVarianceMS = 5; + ejectionVelocity = 1; + velocityVariance = 0; + thetaMin = 0; + thetaMax = 120; + phiReferenceVel = 0; + phiVariance = 360; + ejectionoffset = 0.7; + particles = "LifelikeComplexSmallSmokeParticle"; + blendStyle = "NORMAL"; +}; + + +datablock ParticleData(LifelikeComplexSmallFireballParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/fireball"; + gravityCoefficient = -0.3; + lifetimeMS = 500; + lifetimeVarianceMS = 100; + spinRandomMin = -100.0; + spinRandomMax = 100.0; + + colors[0] = "1 0.9 0.8 1"; + colors[1] = "0.8 0.4 0.0 1"; + colors[2] = "0.8 0.4 0.0 0"; + + sizes[0] = 1; + sizes[1] = 4; + sizes[2] = 2; + + times[0] = 0.0; + times[1] = 0.3; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(LifelikeComplexSmallFireballEmitter) +{ + ejectionPeriodMS = 10; + periodVarianceMS = 3; + ejectionVelocity = 2; + velocityVariance = 1; + thetaMin = 0; + thetaMax = 120; + phiReferenceVel = 0; + phiVariance = 360; + ejectionoffset = 1.3; + + particles = "LifelikeComplexSmallFireballParticle"; + blendStyle = "ADDITIVE"; +}; + +datablock ParticleData(LifelikeComplexSmallGlowParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/flame1"; + gravityCoefficient = -0.3; + lifetimeMS = 400; + lifetimeVarianceMS = 100; + spinRandomMin = -200.0; + spinRandomMax = 200.0; + + colors[0] = "0.9 0.8 1 0.4"; + colors[1] = "0.8 0.4 0.0 0.1"; + colors[2] = "0.8 0.4 0.0 0"; + + sizes[0] = 3; + sizes[1] = 6; + sizes[2] = 2; + + times[0] = 0.0; + times[1] = 0.3; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(LifelikeComplexSmallGlowEmitter) +{ + ejectionPeriodMS = 20; + periodVarianceMS = 5; + ejectionVelocity = 3; + velocityVariance = 2; + thetaMin = 0; + thetaMax = 120; + phiReferenceVel = 0; + phiVariance = 360; + particles = "LifelikeComplexSmallGlowParticle"; + blendStyle = "ADDITIVE"; +}; + +datablock ParticleData(LifelikeComplexSmallSparks2Particle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/spark2"; + dragCoefficient = 4; + gravityCoefficient = 1; + lifetimeMS = 1000; + lifetimeVarianceMS = 200; + spinRandomMin = -0.0; + spinRandomMax = 0.0; + + colors[0] = "1 1 1 0.5"; + colors[1] = "1.0 0.9 0.8 1"; + colors[2] = "0.9 0.8 0.7 0"; + + sizes[0] = 2.0; + sizes[1] = 1.5; + sizes[2] = 0.5; + + times[0] = 0.0; + times[1] = 0.2; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(LifelikeComplexSmallSparks2Emitter) +{ + ejectionPeriodMS = 10; + periodVarianceMS = 1; + ejectionVelocity = 40.0; + velocityVariance = 10.0; + ejectionOffset = 0; + thetaMin = 0; + thetaMax = 70; + phiReferenceVel = 0; + phiVariance = 360; + particles = "LifelikeComplexSmallSparks2Particle"; + blendStyle = "ADDITIVE"; +}; + +datablock ParticleData(LifelikeComplexSmallSparks1Particle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/spark3"; + lifetimeMS = 300; + lifetimeVarianceMS = 20; + useInvAlpha = false; + + colors[0] = "1.0 0.9 0.8 1"; + colors[1] = "1.0 0.9 0.8 1"; + colors[2] = "0.8 0.4 0 0.0"; + + sizes[0] = 1; + sizes[1] = 3.5; + sizes[2] = 6; + + times[0] = 0.0; + times[1] = 0.5; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(LifelikeComplexSmallSparks1Emitter) +{ + ejectionPeriodMS = 20; + periodVarianceMS = 5; + ejectionVelocity = 17; + velocityVariance = 5; + thetaMin = 0; + thetaMax = 70; + phiReferenceVel = 0; + phiVariance = 360; + ejectionoffset = 0; + orientOnVelocity = true; + orientParticles = true; + particles = "LifelikeComplexSmallSparks1Particle"; + blendStyle = "ADDITIVE"; +}; + + + +//----------------------------------------------------------------------------- +// Explosions +//----------------------------------------------------------------------------- + + +datablock ExplosionData(LifelikeComplexSmallExplosion) +{ + //soundProfile = YourSoundDatablock; + lifeTimeMS = 130; + + // Volume + particleEmitter = LifelikeComplexSmallGlowEmitter; + particleDensity = 20; + particleRadius = 1.2; + + // Point emission + emitter[0] = LifelikeComplexSmallSmokeEmitter; + emitter[1] = LifelikeComplexSmallFireballEmitter; + emitter[2] = LifelikeComplexSmallSparks1Emitter; + emitter[3] = LifelikeComplexSmallSparks2Emitter; + + shakeCamera = true; + camShakeFreq = "10.0 11.0 9.0"; + camShakeAmp = "20.0 20.0 20.0"; + camShakeDuration = 1.5; + camShakeRadius = 5.0; + + lightStartRadius = 10.0; + lightEndRadius = 0.0; + lightStartColor = "1 0.9 0.8"; + lightEndColor = "0.8 0.4 0.0"; + lightStartBrightness = 2.0; + lightEndBrightness = 0.0; + +}; \ No newline at end of file diff --git a/Templates/Modules/RealisticVFX/Datablocks/LifelikeExp_FirebombLarge.cs b/Templates/Modules/RealisticVFX/Datablocks/LifelikeExp_FirebombLarge.cs new file mode 100644 index 000000000..3304d5bed --- /dev/null +++ b/Templates/Modules/RealisticVFX/Datablocks/LifelikeExp_FirebombLarge.cs @@ -0,0 +1,319 @@ +//----------------------------------------------------------------------------- +// Lifelike Effects Pack - Large Firebomb Explosion +// Copyright Adam deGrandis 2012 +// +// Thanks for your support! +// +//----------------------------------------------------------------------------- +//exec ("art/datablocks/LifelikeEffectsPack/LifelikeExp_FirebombLarge.cs"); + + +//----------------------------------------------------------------------------- +// Emitters +//----------------------------------------------------------------------------- + + +datablock ParticleData(LifelikeFirebombLargeSmokeParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/smoke2"; + gravityCoefficient = -0.1; + lifetimeMS = 1500; + lifetimeVarianceMS = 500; + spinRandomMin = -50.0; + spinRandomMax = 50.0; + + colors[0] = "0.1 0.1 0.1 1"; + colors[1] = "0.8 0.7 0.6 1"; + colors[2] = "1 0.9 0.8 0"; + + sizes[0] = 4; + sizes[1] = 9; + sizes[2] = 12; + + times[0] = 0.0; + times[1] = 0.3; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(LifelikeFirebombLargeSmokeEmitter) +{ + ejectionPeriodMS = 25; + periodVarianceMS = 5; + ejectionVelocity = 2; + velocityVariance = 1; + thetaMin = 0; + thetaMax = 90; + phiReferenceVel = 0; + phiVariance = 360; + ejectionoffset = 2; + particles = "LifelikeFirebombLargeSmokeParticle"; + blendStyle = "NORMAL"; +}; + +datablock ParticleData(LifelikeFirebombLargeFireBlastParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/fireblast"; + lifetimeMS = 250; + lifetimeVarianceMS = 50; + + colors[0] = "1 0.9 0.8 0"; + colors[1] = "0.8 0.4 0 1"; + colors[2] = "0.8 0.4 0 0"; + + sizes[0] = 2; + sizes[1] = 15; + sizes[2] = 2; + + times[0] = 0.0; + times[1] = 0.3; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(LifelikeFirebombLargeFireBlastEmitter) +{ + ejectionPeriodMS = 10; + periodVarianceMS = 2; + ejectionVelocity = 50; + velocityVariance = 10; + thetaMin = 0; + thetaMax = 70; + phiReferenceVel = 0; + phiVariance = 360; + orientOnVelocity = true; + orientParticles = true; + particles = "LifelikeFirebombLargeFireBlastParticle"; + blendStyle = "ADDITIVE"; +}; + +datablock ParticleData(LifelikeFirebombLargeSparks1Particle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/spark1"; + lifetimeMS = 300; + lifetimeVarianceMS = 20; + gravityCoefficient = 0; + + colors[0] = "1.0 0.9 0.8 0.4"; + colors[1] = "1.0 0.9 0.8 1"; + colors[2] = "0.8 0.4 0 0.0"; + + sizes[0] = 6; + sizes[1] = 4; + sizes[2] = 1; + + times[0] = 0.0; + times[1] = 0.5; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(LifelikeFirebombLargeSparks1Emitter) +{ + ejectionPeriodMS = 7; + periodVarianceMS = 2; + ejectionVelocity = 40; + velocityVariance = 30; + thetaMin = 0; + thetaMax = 90; + phiReferenceVel = 0; + phiVariance = 360; + ejectionoffset = 0; + orientOnVelocity = true; + orientParticles = true; + particles = "LifelikeFirebombLargeSparks1Particle"; + blendStyle = "ADDITIVE"; +}; + + +datablock ParticleData(LifelikeFirebombLargeGlowParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/flame1"; + gravityCoefficient = -0.3; + lifetimeMS = 400; + lifetimeVarianceMS = 100; + spinRandomMin = -200.0; + spinRandomMax = 200.0; + + colors[0] = "0.9 0.8 1 0.4"; + colors[1] = "0.8 0.4 0.0 0.1"; + colors[2] = "0.8 0.4 0.0 0"; + + sizes[0] = 7; + sizes[1] = 11; + sizes[2] = 5; + + times[0] = 0.0; + times[1] = 0.3; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(LifelikeFirebombLargeGlowEmitter) +{ + ejectionPeriodMS = 20; + periodVarianceMS = 5; + ejectionVelocity = 3; + velocityVariance = 2; + thetaMin = 0; + thetaMax = 120; + phiReferenceVel = 0; + phiVariance = 360; + + particles = "LifelikeFirebombLargeGlowParticle"; + blendStyle = "ADDITIVE"; +}; + + +datablock ParticleData(LifelikeFirebombLargeFireballParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/flame1"; + gravityCoefficient = -0.3; + lifetimeMS = 700; + lifetimeVarianceMS = 100; + spinRandomMin = -100.0; + spinRandomMax = 100.0; + + colors[0] = "1 0.9 0.8 1"; + colors[1] = "0.8 0.4 0.0 1"; + colors[2] = "0.8 0.4 0.0 0"; + + sizes[0] = 1; + sizes[1] = 7; + sizes[2] = 4; + + times[0] = 0.0; + times[1] = 0.3; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(LifelikeFirebombLargeFireballEmitter) +{ + ejectionPeriodMS = 7; + periodVarianceMS = 3; + ejectionVelocity = 3; + velocityVariance = 2; + thetaMin = 0; + thetaMax = 120; + phiReferenceVel = 0; + phiVariance = 360; + ejectionoffset = 3; + + particles = "LifelikeFirebombLargeFireballParticle"; + blendStyle = "ADDITIVE"; +}; + + + +//----------------------------------------------------------------------------- +// Debris +//----------------------------------------------------------------------------- + +datablock ParticleData(LifelikeFirebombLargeDebrisTrailParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/flame1"; + + gravityCoefficient = -0.2; + lifetimeMS = 500; + lifetimeVarianceMS = 300; + spinRandomMin = -300; + spinRandomMax = 300; + + sizes[0] = 1; + sizes[1] = 3; + sizes[2] = 1; + + times[0] = 0.0; + times[1] = 0.2; + times[2] = 1.0; + + colors[0] = "1 0.9 0.8 1"; + colors[1] = "0.8 0.4 0 0.5"; + colors[2] = "0.8 0.4 0 0"; + +}; + +datablock ParticleEmitterData(LifelikeFirebombLargeDebrisTrailEmitter) +{ + ejectionPeriodMS = 20; + periodVarianceMS = 10; + ejectionVelocity = 5; + velocityVariance = 2; + thetaMin = 0; + thetaMax = 10; + phiReferenceVel = 0; + phiVariance = 360; + + particles = "LifelikeFirebombLargeDebrisTrailParticle"; + blendStyle = "ADDITIVE"; + ejectionOffset = "2"; +}; + +datablock DebrisData(LifelikeFirebombLargeDebris) +{ + shapeFile = "art/shapes/particles/LifelikeEffectsPack/invisibledebris.dts"; + emitters[0] = LifelikeFirebombLargeDebrisTrailEmitter; + elasticity = 0.4; + friction = 0.25; + numBounces = 1; + bounceVariance = 0; + explodeOnMaxBounce = false; + staticOnMaxBounce = false; + snapOnMaxBounce = false; + minSpinSpeed = 100; + maxSpinSpeed = 200; + render2D = false; + lifetime = 2; + lifetimeVariance = 1; + velocity = 30; + velocityVariance = 10; + fade = false; + useRadiusMass = false; + baseRadius = 0.3; + gravModifier = 3.0; + terminalVelocity = 50; + ignoreWater = false; +}; + + +//----------------------------------------------------------------------------- +// Explosions +//----------------------------------------------------------------------------- + + + +datablock ExplosionData(LifelikeFirebombLargeExplosion) +{ + //soundProfile = YourSoundDatablock; + lifeTimeMS = 150; + + // Volume + particleEmitter = LifelikeFirebombLargeGlowEmitter; + particleDensity = 5; + particleRadius = 3; + + // Point emission + emitter[0] = LifelikeFirebombLargeSmokeEmitter; + emitter[1] = LifelikeFirebombLargeFireballEmitter; + emitter[2] = LifelikeFirebombLargeFireBlastEmitter; + emitter[3] = LifelikeFirebombLargeSparks1Emitter; + + // Debris + debris = LifelikeFirebombLargeDebris; + debrisThetaMin = 10; + debrisThetaMax = 60; + debrisNum = 4; + debrisNumVariance = 2; + debrisVelocity = 25; + debrisVelocityVariance = 5; + + shakeCamera = true; + camShakeFreq = "10.0 11.0 9.0"; + camShakeAmp = "20.0 20.0 20.0"; + camShakeDuration = 1.5; + camShakeRadius = 20.0; + + lightStartRadius = 20.0; + lightEndRadius = 0.0; + lightStartColor = "1 0.9 0.8"; + lightEndColor = "0.8 0.4 0.0"; + lightStartBrightness = 2.0; + lightEndBrightness = 0.0; + +}; \ No newline at end of file diff --git a/Templates/Modules/RealisticVFX/Datablocks/LifelikeExp_FirebombSmall.cs b/Templates/Modules/RealisticVFX/Datablocks/LifelikeExp_FirebombSmall.cs new file mode 100644 index 000000000..88493fdc0 --- /dev/null +++ b/Templates/Modules/RealisticVFX/Datablocks/LifelikeExp_FirebombSmall.cs @@ -0,0 +1,319 @@ +//----------------------------------------------------------------------------- +// Lifelike Effects Pack - Small Firebomb Explosion +// Copyright Adam deGrandis 2012 +// +// Thanks for your support! +// +//----------------------------------------------------------------------------- +//exec ("art/datablocks/LifelikeEffectsPack/LifelikeExp_FirebombSmall.cs"); + + +//----------------------------------------------------------------------------- +// Emitters +//----------------------------------------------------------------------------- + + +datablock ParticleData(LifelikeFirebombSmallSmokeParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/smoke2"; + gravityCoefficient = -0.05; + lifetimeMS = 1500; + lifetimeVarianceMS = 500; + spinRandomMin = -50.0; + spinRandomMax = 50.0; + + colors[0] = "0.1 0.1 0.1 1"; + colors[1] = "0.8 0.7 0.6 1"; + colors[2] = "1 0.9 0.8 0"; + + sizes[0] = 2; + sizes[1] = 4.5; + sizes[2] = 6; + + times[0] = 0.0; + times[1] = 0.3; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(LifelikeFirebombSmallSmokeEmitter) +{ + ejectionPeriodMS = 30; + periodVarianceMS = 5; + ejectionVelocity = 2; + velocityVariance = 1; + thetaMin = 0; + thetaMax = 90; + phiReferenceVel = 0; + phiVariance = 360; + ejectionoffset = 1; + particles = "LifelikeFirebombSmallSmokeParticle"; + blendStyle = "NORMAL"; +}; + +datablock ParticleData(LifelikeFirebombSmallFireBlastParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/fireblast"; + lifetimeMS = 250; + lifetimeVarianceMS = 50; + + colors[0] = "1 0.9 0.8 0.5"; + colors[1] = "0.8 0.4 0 1"; + colors[2] = "0.8 0.4 0 0"; + + sizes[0] = 1; + sizes[1] = 8; + sizes[2] = 1; + + times[0] = 0.0; + times[1] = 0.3; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(LifelikeFirebombSmallFireBlastEmitter) +{ + ejectionPeriodMS = 10; + periodVarianceMS = 2; + ejectionVelocity = 20; + velocityVariance = 10; + thetaMin = 0; + thetaMax = 70; + phiReferenceVel = 0; + phiVariance = 360; + orientOnVelocity = true; + orientParticles = true; + particles = "LifelikeFirebombSmallFireBlastParticle"; + blendStyle = "ADDITIVE"; +}; + +datablock ParticleData(LifelikeFirebombSmallSparks1Particle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/spark1"; + lifetimeMS = 300; + lifetimeVarianceMS = 20; + gravityCoefficient = 0; + + colors[0] = "1.0 0.9 0.8 0.4"; + colors[1] = "1.0 0.9 0.8 1"; + colors[2] = "0.8 0.4 0 0.0"; + + sizes[0] = 3; + sizes[1] = 2; + sizes[2] = 1; + + times[0] = 0.0; + times[1] = 0.5; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(LifelikeFirebombSmallSparks1Emitter) +{ + ejectionPeriodMS = 12; + periodVarianceMS = 2; + ejectionVelocity = 20; + velocityVariance = 15; + thetaMin = 0; + thetaMax = 90; + phiReferenceVel = 0; + phiVariance = 360; + ejectionoffset = 0; + orientOnVelocity = true; + orientParticles = true; + particles = "LifelikeFirebombSmallSparks1Particle"; + blendStyle = "ADDITIVE"; +}; + + +datablock ParticleData(LifelikeFirebombSmallGlowParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/flame1"; + gravityCoefficient = -0.3; + lifetimeMS = 400; + lifetimeVarianceMS = 100; + spinRandomMin = -200.0; + spinRandomMax = 200.0; + + colors[0] = "0.9 0.8 1 0.4"; + colors[1] = "0.8 0.4 0.0 0.1"; + colors[2] = "0.8 0.4 0.0 0"; + + sizes[0] = 3; + sizes[1] = 6; + sizes[2] = 2; + + times[0] = 0.0; + times[1] = 0.3; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(LifelikeFirebombSmallGlowEmitter) +{ + ejectionPeriodMS = 20; + periodVarianceMS = 5; + ejectionVelocity = 3; + velocityVariance = 2; + thetaMin = 0; + thetaMax = 120; + phiReferenceVel = 0; + phiVariance = 360; + + particles = "LifelikeFirebombSmallGlowParticle"; + blendStyle = "ADDITIVE"; +}; + + +datablock ParticleData(LifelikeFirebombSmallFireballParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/flame1"; + gravityCoefficient = -0.15; + lifetimeMS = 700; + lifetimeVarianceMS = 100; + spinRandomMin = -200.0; + spinRandomMax = 200.0; + + colors[0] = "1 0.9 0.8 1"; + colors[1] = "0.8 0.4 0.0 1"; + colors[2] = "0.8 0.4 0.0 0"; + + sizes[0] = 1; + sizes[1] = 4; + sizes[2] = 3; + + times[0] = 0.0; + times[1] = 0.3; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(LifelikeFirebombSmallFireballEmitter) +{ + ejectionPeriodMS = 14; + periodVarianceMS = 3; + ejectionVelocity = 3; + velocityVariance = 2; + thetaMin = 0; + thetaMax = 120; + phiReferenceVel = 0; + phiVariance = 360; + ejectionoffset = 1.5; + + particles = "LifelikeFirebombSmallFireballParticle"; + blendStyle = "ADDITIVE"; +}; + + + +//----------------------------------------------------------------------------- +// Debris +//----------------------------------------------------------------------------- + +datablock ParticleData(LifelikeFirebombSmallDebrisTrailParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/flame1"; + + gravityCoefficient = -0.2; + lifetimeMS = 500; + lifetimeVarianceMS = 300; + spinRandomMin = -300; + spinRandomMax = 300; + + sizes[0] = 0.5; + sizes[1] = 1.5; + sizes[2] = 0.5; + + times[0] = 0.0; + times[1] = 0.2; + times[2] = 1.0; + + colors[0] = "1 0.9 0.8 1"; + colors[1] = "0.8 0.4 0 0.5"; + colors[2] = "0.8 0.4 0 0"; + +}; + +datablock ParticleEmitterData(LifelikeFirebombSmallDebrisTrailEmitter) +{ + ejectionPeriodMS = 20; + periodVarianceMS = 10; + ejectionVelocity = 5; + velocityVariance = 2; + thetaMin = 0; + thetaMax = 10; + phiReferenceVel = 0; + phiVariance = 360; + + particles = "LifelikeFirebombSmallDebrisTrailParticle"; + blendStyle = "ADDITIVE"; + ejectionOffset = "1"; +}; + +datablock DebrisData(LifelikeFirebombSmallDebris) +{ + shapeFile = "art/shapes/particles/LifelikeEffectsPack/invisibledebris.dts"; + emitters[0] = LifelikeFirebombSmallDebrisTrailEmitter; + elasticity = 0.4; + friction = 0.25; + numBounces = 1; + bounceVariance = 0; + explodeOnMaxBounce = false; + staticOnMaxBounce = false; + snapOnMaxBounce = false; + minSpinSpeed = 100; + maxSpinSpeed = 200; + render2D = false; + lifetime = 2; + lifetimeVariance = 1; + velocity = 10; + velocityVariance = 4; + fade = false; + useRadiusMass = false; + baseRadius = 0.3; + gravModifier = 3.0; + terminalVelocity = 50; + ignoreWater = false; +}; + + +//----------------------------------------------------------------------------- +// Explosions +//----------------------------------------------------------------------------- + + + +datablock ExplosionData(LifelikeFirebombSmallExplosion) +{ + //soundProfile = YourSoundDatablock; + lifeTimeMS = 120; + + // Volume + particleEmitter = LifelikeFirebombSmallGlowEmitter; + particleDensity = 5; + particleRadius = 1.5; + + // Point emission + emitter[0] = LifelikeFirebombSmallSmokeEmitter; + emitter[1] = LifelikeFirebombSmallFireballEmitter; + emitter[2] = LifelikeFirebombSmallFireBlastEmitter; + emitter[3] = LifelikeFirebombSmallSparks1Emitter; + + // Debris + debris = LifelikeFirebombSmallDebris; + debrisThetaMin = 10; + debrisThetaMax = 60; + debrisNum = 4; + debrisNumVariance = 2; + debrisVelocity = 15; + debrisVelocityVariance = 5; + + shakeCamera = true; + camShakeFreq = "10.0 11.0 9.0"; + camShakeAmp = "20.0 20.0 20.0"; + camShakeDuration = 1.5; + camShakeRadius = 5.0; + + lightStartRadius = 10.0; + lightEndRadius = 0.0; + lightStartColor = "1 0.9 0.8"; + lightEndColor = "0.8 0.4 0.0"; + lightStartBrightness = 2.0; + lightEndBrightness = 0.0; + +}; \ No newline at end of file diff --git a/Templates/Modules/RealisticVFX/Datablocks/LifelikeExp_Flak.cs b/Templates/Modules/RealisticVFX/Datablocks/LifelikeExp_Flak.cs new file mode 100644 index 000000000..473c21619 --- /dev/null +++ b/Templates/Modules/RealisticVFX/Datablocks/LifelikeExp_Flak.cs @@ -0,0 +1,196 @@ +//----------------------------------------------------------------------------- +// Lifelike Effects Pack - Flak Explosion +// Copyright Adam deGrandis 2012 +// +// Thanks for your support! +// +//----------------------------------------------------------------------------- +//exec ("art/datablocks/LifelikeEffectsPack/LifelikeExp_Flak.cs"); + + +//----------------------------------------------------------------------------- +// Emitters +//----------------------------------------------------------------------------- + + +datablock ParticleData(LifelikeFlakPointBurstParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/PointBurst"; + lifetimeMS = 150; + spinRandomMin = -50.0; + spinRandomMax = 50.0; + + colors[0] = "1.0 0.9 0.8 1"; + colors[1] = "1 0.6 0.2 1"; + colors[2] = "0.8 0.4 0.0 0.0"; + + sizes[0] = 1; + sizes[1] = 8; + sizes[2] = 2; + + times[0] = 0.0; + times[1] = 0.3; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(LifelikeFlakPointBurstEmitter) +{ + ejectionPeriodMS = 40; + periodVarianceMS = 5; + ejectionVelocity = 0.1; + velocityVariance = 0; + thetaMin = 0; + thetaMax = 120; + phiReferenceVel = 0; + phiVariance = 360; + particles = "LifelikeFlakPointBurstParticle"; + blendStyle = "ADDITIVE"; +}; + + +datablock ParticleData(LifelikeFlakSmokeParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/smoke1"; + lifetimeMS = 3300; + lifetimeVarianceMS = 200; + spinRandomMin = -50.0; + spinRandomMax = 50.0; + + colors[0] = "0.5 0.4 0.1 0"; + colors[1] = "0.7 0.7 0.6 1"; + colors[2] = "1 0.9 0.8 0.0"; + + sizes[0] = 3; + sizes[1] = 5; + sizes[2] = 6; + + times[0] = 0.0; + times[1] = 0.05; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(LifelikeFlakSmokeEmitter) +{ + ejectionPeriodMS = 20; + periodVarianceMS = 5; + ejectionVelocity = 1; + thetaMin = 0; + thetaMax = 180; + phiReferenceVel = 0; + phiVariance = 360; + ejectionoffset = 2; + particles = "LifelikeFlakSmokeParticle"; + blendStyle = "NORMAL"; +}; + + + +datablock ParticleData(LifelikeFlakSparksParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/spark1"; + lifetimeMS = 100; + lifetimeVarianceMS = 50; + + colors[0] = "1.0 0.9 0.8 1"; + colors[1] = "1.0 0.9 0.8 1"; + colors[2] = "0.8 0.4 0 0.0"; + + sizes[0] = 1; + sizes[1] = 3; + sizes[2] = 1; + + times[0] = 0.0; + times[1] = 0.5; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(LifelikeFlakSparksEmitter) +{ + ejectionPeriodMS = 10; + periodVarianceMS = 5; + ejectionVelocity = 35; + velocityVariance = 10; + thetaMin = 0; + thetaMax = 180; + phiReferenceVel = 0; + phiVariance = 360; + ejectionoffset = 0; + orientOnVelocity = true; + orientParticles = true; + particles = "LifelikeFlakSparksParticle"; + blendStyle = "ADDITIVE"; +}; + +datablock ParticleData(LifelikeFlakHazeParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/flame1"; + lifetimeMS = 2500; + lifetimeVarianceMS = 500; + spinRandomMin = -50.0; + spinRandomMax = 50.0; + + colors[0] = "0.4 0.3 0.1 0"; + colors[1] = "0.1 0.1 0.1 0.7"; + colors[2] = "0.1 0.1 0.1 0"; + + sizes[0] = 2; + sizes[1] = 3; + sizes[2] = 4; + + times[0] = 0.0; + times[1] = 0.1; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(LifelikeFlakHazeEmitter) +{ + ejectionPeriodMS = 20; + periodVarianceMS = 5; + ejectionVelocity = 0; + velocityVariance = 0; + thetaMin = 0; + thetaMax = 180; + phiReferenceVel = 0; + phiVariance = 360; + ejectionOffset = 1; + + particles = "LifelikeFlakHazeParticle"; + blendStyle = "NORMAL"; +}; + + + +//----------------------------------------------------------------------------- +// Explosions +//----------------------------------------------------------------------------- + + +datablock ExplosionData(LifelikeFlakExplosion) +{ + //soundProfile = YourSoundDatablock; + lifeTimeMS = 100; + + // Volume + particleEmitter = LifelikeFlakHazeEmitter; + particleDensity = 30; + particleRadius = 1; + + // Point emission + emitter[0] = LifelikeFlakSmokeEmitter; + emitter[1] = LifelikeFlakPointBurstEmitter; + emitter[2] = LifelikeFlakSparksEmitter; + + shakeCamera = true; + camShakeFreq = "10.0 11.0 9.0"; + camShakeAmp = "20.0 20.0 20.0"; + camShakeDuration = 1.5; + camShakeRadius = 10.0; + + lightStartRadius = 10.0; + lightEndRadius = 0.0; + lightStartColor = "1 0.9 0.8"; + lightEndColor = "0.8 0.4 0.0"; + lightStartBrightness = 2.0; + lightEndBrightness = 0.0; + +}; \ No newline at end of file diff --git a/Templates/Modules/RealisticVFX/Datablocks/LifelikeExp_Flashbang.cs b/Templates/Modules/RealisticVFX/Datablocks/LifelikeExp_Flashbang.cs new file mode 100644 index 000000000..707c79019 --- /dev/null +++ b/Templates/Modules/RealisticVFX/Datablocks/LifelikeExp_Flashbang.cs @@ -0,0 +1,238 @@ +//----------------------------------------------------------------------------- +// Lifelike Effects Pack - Flashbang Explosion +// Copyright Adam deGrandis 2012 +// +// Thanks for your support! +// +//----------------------------------------------------------------------------- +//exec ("art/datablocks/LifelikeEffectsPack/LifelikeExp_Flashbang.cs"); + + +//----------------------------------------------------------------------------- +// Emitters +//----------------------------------------------------------------------------- + + +datablock ParticleData(LifelikeFlashbangPointBurstParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/PointBurst"; + lifetimeMS = 350; + lifetimeVarianceMS = 0; + spinRandomMin = -20.0; + spinRandomMax = 20.0; + + colors[0] = "1.0 0.9 0.8 1"; + colors[1] = "1.0 0.9 0.8 0.2"; + colors[2] = "1.0 0.9 0.8 0.0"; + + sizes[0] = 2; + sizes[1] = 5; + sizes[2] = 1; + + times[0] = 0.0; + times[1] = 0.1; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(LifelikeFlashbangPointBurstEmitter) +{ + ejectionPeriodMS = 60; + periodVarianceMS = 5; + ejectionVelocity = 0; + velocityVariance = 0; + thetaMin = 0; + thetaMax = 120; + phiReferenceVel = 0; + phiVariance = 360; + ejectionoffset = 0; + particles = "LifelikeFlashbangPointBurstParticle"; + blendStyle = "ADDITIVE"; +}; + +datablock ParticleData(LifelikeFlashbangSmokeParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/flame1"; + gravityCoefficient = -0.02; + lifetimeMS = 1500; + lifetimeVarianceMS = 200; + spinRandomMin = -100.0; + spinRandomMax = 100.0; + + colors[0] = "0.5 0.5 0.5 0.5"; + colors[1] = "1 1 1 0.3"; + colors[2] = "1 1 1 0.0"; + + sizes[0] = 2; + sizes[1] = 3; + sizes[2] = 5; + + times[0] = 0.0; + times[1] = 0.2; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(LifelikeFlashbangSmokeEmitter) +{ + ejectionPeriodMS = 10; + periodVarianceMS = 2; + ejectionVelocity = 1; + velocityVariance = 0; + thetaMin = 0; + thetaMax = 120; + phiReferenceVel = 0; + phiVariance = 360; + ejectionoffset = 1; + particles = "LifelikeFlashbangSmokeParticle"; + blendStyle = "NORMAL"; +}; + + + +datablock ParticleData(LifelikeFlashbangGlowParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/flame1"; + gravityCoefficient = -0.3; + lifetimeMS = 400; + lifetimeVarianceMS = 100; + spinRandomMin = -200.0; + spinRandomMax = 200.0; + + colors[0] = "0.9 0.8 1 0.4"; + colors[1] = "0.9 0.8 1 0.1"; + colors[2] = "0.9 0.8 1 0"; + + sizes[0] = 3; + sizes[1] = 6; + sizes[2] = 2; + + times[0] = 0.0; + times[1] = 0.3; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(LifelikeFlashbangGlowEmitter) +{ + ejectionPeriodMS = 30; + periodVarianceMS = 5; + ejectionVelocity = 3; + velocityVariance = 2; + thetaMin = 0; + thetaMax = 120; + phiReferenceVel = 0; + phiVariance = 360; + particles = "LifelikeFlashbangGlowParticle"; + blendStyle = "ADDITIVE"; +}; + +datablock ParticleData(LifelikeFlashbangSparks2Particle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/spark2"; + dragCoefficient = 4; + gravityCoefficient = 1; + lifetimeMS = 1000; + lifetimeVarianceMS = 200; + spinRandomMin = -0.0; + spinRandomMax = 0.0; + + colors[0] = "1 1 1 0.5"; + colors[1] = "1.0 0.9 0.8 1"; + colors[2] = "0.9 0.8 0.7 0"; + + sizes[0] = 2.0; + sizes[1] = 1.5; + sizes[2] = 0.5; + + times[0] = 0.0; + times[1] = 0.2; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(LifelikeFlashbangSparks2Emitter) +{ + ejectionPeriodMS = 6; + periodVarianceMS = 1; + ejectionVelocity = 30.0; + velocityVariance = 10.0; + ejectionOffset = 0; + thetaMin = 0; + thetaMax = 70; + phiReferenceVel = 0; + phiVariance = 360; + particles = "LifelikeFlashbangSparks2Particle"; + blendStyle = "ADDITIVE"; +}; + +datablock ParticleData(LifelikeFlashbangSparks1Particle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/spark3"; + lifetimeMS = 200; + lifetimeVarianceMS = 20; + useInvAlpha = false; + + colors[0] = "1.0 0.9 0.8 1"; + colors[1] = "1.0 0.9 0.8 1"; + colors[2] = "1.0 0.9 0.8 0.0"; + + sizes[0] = 1; + sizes[1] = 3.5; + sizes[2] = 6; + + times[0] = 0.0; + times[1] = 0.5; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(LifelikeFlashbangSparks1Emitter) +{ + ejectionPeriodMS = 20; + periodVarianceMS = 5; + ejectionVelocity = 17; + velocityVariance = 5; + thetaMin = 0; + thetaMax = 70; + phiReferenceVel = 0; + phiVariance = 360; + ejectionoffset = 0; + orientOnVelocity = true; + orientParticles = true; + particles = "LifelikeFlashbangSparks1Particle"; + blendStyle = "ADDITIVE"; +}; + + + +//----------------------------------------------------------------------------- +// Explosions +//----------------------------------------------------------------------------- + + +datablock ExplosionData(LifelikeFlashbangExplosion) +{ + //soundProfile = YourSoundDatablock; + lifeTimeMS = 70; + + // Volume + particleEmitter = LifelikeFlashbangGlowEmitter; + particleDensity = 10; + particleRadius = 2; + + // Point emission + emitter[0] = LifelikeFlashbangSmokeEmitter; + emitter[1] = LifelikeFlashbangPointBurstEmitter; + emitter[2] = LifelikeFlashbangSparks1Emitter; + emitter[3] = LifelikeFlashbangSparks2Emitter; + + shakeCamera = true; + camShakeFreq = "10.0 11.0 9.0"; + camShakeAmp = "20.0 20.0 20.0"; + camShakeDuration = 1.5; + camShakeRadius = 3.0; + + lightStartRadius = 10.0; + lightEndRadius = 0.0; + lightStartColor = "1 0.9 0.8"; + lightEndColor = "1 0.9 0.8"; + lightStartBrightness = 2.0; + lightEndBrightness = 0.0; + +}; \ No newline at end of file diff --git a/Templates/Modules/RealisticVFX/Datablocks/LifelikeExp_GroundHitLarge.cs b/Templates/Modules/RealisticVFX/Datablocks/LifelikeExp_GroundHitLarge.cs new file mode 100644 index 000000000..834321a24 --- /dev/null +++ b/Templates/Modules/RealisticVFX/Datablocks/LifelikeExp_GroundHitLarge.cs @@ -0,0 +1,208 @@ +//----------------------------------------------------------------------------- +// Lifelike Effects Pack - Large Ground Explosion +// Copyright Adam deGrandis 2012 +// +// Thanks for your support! +// +//----------------------------------------------------------------------------- +//exec ("art/datablocks/LifelikeEffectsPack/LifelikeExp_GroundHitLarge.cs"); + + +//----------------------------------------------------------------------------- +// Emitters +//----------------------------------------------------------------------------- + + +datablock ParticleData(LifelikeGroundHitLargePointBurstParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/PointBurst"; + lifetimeMS = 350; + lifetimeVarianceMS = 0; + spinRandomMin = -20.0; + spinRandomMax = 20.0; + + colors[0] = "1.0 0.9 0.8 1"; + colors[1] = "0.8 0.4 0.0 0.2"; + colors[2] = "0.8 0.4 0.0 0.0"; + + sizes[0] = 8; + sizes[1] = 25; + sizes[2] = 2; + + times[0] = 0.0; + times[1] = 0.1; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(LifelikeGroundHitLargePointBurstEmitter) +{ + ejectionPeriodMS = 40; + periodVarianceMS = 5; + ejectionVelocity = 0; + velocityVariance = 0; + thetaMin = 0; + thetaMax = 120; + phiReferenceVel = 0; + phiVariance = 360; + ejectionoffset = 0; + particles = "LifelikeGroundHitLargePointBurstParticle"; + blendStyle = "ADDITIVE"; +}; + + +datablock ParticleData(LifelikeGroundHitLargeSmokeParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/smoke2"; + gravityCoefficient = 0.5; + lifetimeMS = 3000; + lifetimeVarianceMS = 500; + spinRandomMin = -50.0; + spinRandomMax = 50.0; + + colors[0] = "0.3 0.2 0.1 0"; + colors[1] = "0.6 0.5 0.4 1"; + colors[2] = "0.6 0.5 0.4 0"; + + sizes[0] = 4; + sizes[1] = 14; + sizes[2] = 25; + + times[0] = 0.0; + times[1] = 0.1; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(LifelikeGroundHitLargeSmokeEmitter) +{ + ejectionPeriodMS = 15; + periodVarianceMS = 5; + ejectionVelocity = 10; + velocityVariance = 5; + thetaMin = 0; + thetaMax = 50; + phiReferenceVel = 0; + phiVariance = 360; + ejectionoffset = 0; + particles = "LifelikeGroundHitLargeSmokeParticle"; + blendStyle = "NORMAL"; +}; + + +datablock ParticleData(LifelikeGroundHitLargeDirtDebrisParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/dirtDebris"; + //dragCoefficient = 4; + gravityCoefficient = 3; + lifetimeMS = 1500; + lifetimeVarianceMS = 500; + spinRandomMin = -40.0; + spinRandomMax = 40.0; + + colors[0] = "1 1 1 1"; + colors[1] = "1.0 0.9 0.8 1"; + colors[2] = "0.9 0.8 0.7 0"; + + sizes[0] = 5; + sizes[1] = 10; + sizes[2] = 14; + + times[0] = 0.0; + times[1] = 0.2; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(LifelikeGroundHitLargeDirtDebrisEmitter) +{ + ejectionPeriodMS = 10; + periodVarianceMS = 1; + ejectionVelocity = 30.0; + velocityVariance = 10.0; + ejectionOffset = 0; + thetaMin = 0; + thetaMax = 40; + phiReferenceVel = 0; + phiVariance = 360; + particles = "LifelikeGroundHitLargeDirtDebrisParticle"; + blendStyle = "NORMAL"; +}; + + +datablock ParticleData(LifelikeGroundHitLargeDirtBlastParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/dirtBlast1"; + lifetimeMS = 850; + lifetimeVarianceMS = 50; + gravityCoefficient = 1; + + colors[0] = "0.6 0.5 0.4 1"; + colors[1] = "0.6 0.5 0.4 1"; + colors[2] = "0.6 0.5 0.4 0"; + + sizes[0] = 5; + sizes[1] = 30; + sizes[2] = 30; + + times[0] = 0.0; + times[1] = 0.2; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(LifelikeGroundHitLargeDirtBlastEmitter) +{ + ejectionPeriodMS = 20; + periodVarianceMS = 2; + ejectionVelocity = 20; + velocityVariance = 2; + thetaMin = 0; + thetaMax = 50; + phiReferenceVel = 0; + phiVariance = 360; + ejectionoffset = 0; + orientOnVelocity = true; + orientParticles = true; + particles = "LifelikeGroundHitLargeDirtBlastParticle"; + blendStyle = "NORMAL"; +}; + + + +//----------------------------------------------------------------------------- +// Explosions +//----------------------------------------------------------------------------- + + + +datablock ExplosionData(LifelikeGroundHitLargeExplosion) +{ + //soundProfile = YourSoundDatablock; + lifeTimeMS = 200; + + // Volume + particleEmitter = LifelikeGroundHitLargeSmokeEmitter; + particleDensity = 5; + particleRadius = 3; + + // Point emission + emitter[0] = LifelikeGroundHitLargeSmokeEmitter; + emitter[1] = LifelikeGroundHitLargePointBurstEmitter; + emitter[2] = LifelikeGroundHitLargeDirtBlastEmitter; + emitter[3] = LifelikeGroundHitLargeDirtDebrisEmitter; + + // Sub explosion objects + //subExplosion[0] = LifelikeGroundHitLargeExplosion; + + + shakeCamera = true; + camShakeFreq = "10.0 11.0 9.0"; + camShakeAmp = "20.0 20.0 20.0"; + camShakeDuration = 1.5; + camShakeRadius = 20.0; + + lightStartRadius = 20.0; + lightEndRadius = 0.0; + lightStartColor = "1 0.9 0.8"; + lightEndColor = "0.8 0.4 0.0"; + lightStartBrightness = 2.0; + lightEndBrightness = 0.0; + +}; \ No newline at end of file diff --git a/Templates/Modules/RealisticVFX/Datablocks/LifelikeExp_GroundHitSmall.cs b/Templates/Modules/RealisticVFX/Datablocks/LifelikeExp_GroundHitSmall.cs new file mode 100644 index 000000000..d2f796e87 --- /dev/null +++ b/Templates/Modules/RealisticVFX/Datablocks/LifelikeExp_GroundHitSmall.cs @@ -0,0 +1,204 @@ +//----------------------------------------------------------------------------- +// Lifelike Effects Pack - Small Ground Explosion +// Copyright Adam deGrandis 2012 +// +// Thanks for your support! +// +//----------------------------------------------------------------------------- +//exec ("art/datablocks/LifelikeEffectsPack/LifelikeExp_GroundHitSmall.cs"); + + +//----------------------------------------------------------------------------- +// Emitters +//----------------------------------------------------------------------------- + + +datablock ParticleData(LifelikeGroundHitSmallPointBurstParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/PointBurst"; + lifetimeMS = 350; + lifetimeVarianceMS = 0; + spinRandomMin = -20.0; + spinRandomMax = 20.0; + + colors[0] = "1.0 0.9 0.8 1"; + colors[1] = "0.8 0.4 0.0 0.2"; + colors[2] = "0.8 0.4 0.0 0.0"; + + sizes[0] = 4; + sizes[1] = 13; + sizes[2] = 1; + + times[0] = 0.0; + times[1] = 0.1; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(LifelikeGroundHitSmallPointBurstEmitter) +{ + ejectionPeriodMS = 60; + periodVarianceMS = 5; + ejectionVelocity = 0; + velocityVariance = 0; + thetaMin = 0; + thetaMax = 120; + phiReferenceVel = 0; + phiVariance = 360; + ejectionoffset = 0; + particles = "LifelikeGroundHitSmallPointBurstParticle"; + blendStyle = "ADDITIVE"; +}; + + +datablock ParticleData(LifelikeGroundHitSmallSmokeParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/smoke2"; + gravityCoefficient = 0.5; + lifetimeMS = 1500; + lifetimeVarianceMS = 500; + spinRandomMin = -50.0; + spinRandomMax = 50.0; + + colors[0] = "0.3 0.2 0.1 0"; + colors[1] = "0.6 0.5 0.4 1"; + colors[2] = "0.6 0.5 0.4 0"; + + sizes[0] = 2; + sizes[1] = 7; + sizes[2] = 12.5; + + times[0] = 0.0; + times[1] = 0.1; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(LifelikeGroundHitSmallSmokeEmitter) +{ + ejectionPeriodMS = 40; + periodVarianceMS = 5; + ejectionVelocity = 6; + velocityVariance = 3; + thetaMin = 0; + thetaMax = 50; + phiReferenceVel = 0; + phiVariance = 360; + ejectionoffset = 0; + particles = "LifelikeGroundHitSmallSmokeParticle"; + blendStyle = "NORMAL"; +}; + + +datablock ParticleData(LifelikeGroundHitSmallDirtDebrisParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/dirtDebris"; + //dragCoefficient = 4; + gravityCoefficient = 3; + lifetimeMS = 1200; + lifetimeVarianceMS = 500; + spinRandomMin = -40.0; + spinRandomMax = 40.0; + + colors[0] = "1 1 1 1"; + colors[1] = "1.0 0.9 0.8 1"; + colors[2] = "0.9 0.8 0.7 0"; + + sizes[0] = 2; + sizes[1] = 5; + sizes[2] = 7; + + times[0] = 0.0; + times[1] = 0.2; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(LifelikeGroundHitSmallDirtDebrisEmitter) +{ + ejectionPeriodMS = 10; + periodVarianceMS = 1; + ejectionVelocity = 20.0; + velocityVariance = 7.0; + ejectionOffset = 0; + thetaMin = 0; + thetaMax = 40; + phiReferenceVel = 0; + phiVariance = 360; + particles = "LifelikeGroundHitSmallDirtDebrisParticle"; + blendStyle = "NORMAL"; +}; + + +datablock ParticleData(LifelikeGroundHitSmallDirtBlastParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/dirtBlast1"; + lifetimeMS = 800; + lifetimeVarianceMS = 50; + gravityCoefficient = 1; + + colors[0] = "0.6 0.5 0.4 1"; + colors[1] = "0.6 0.5 0.4 1"; + colors[2] = "0.6 0.5 0.4 0"; + + sizes[0] = 1; + sizes[1] = 10; + sizes[2] = 13; + + times[0] = 0.0; + times[1] = 0.2; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(LifelikeGroundHitSmallDirtBlastEmitter) +{ + ejectionPeriodMS = 30; + periodVarianceMS = 2; + ejectionVelocity = 13; + velocityVariance = 2; + thetaMin = 0; + thetaMax = 50; + phiReferenceVel = 0; + phiVariance = 360; + ejectionoffset = 0; + orientOnVelocity = true; + orientParticles = true; + particles = "LifelikeGroundHitSmallDirtBlastParticle"; + blendStyle = "NORMAL"; +}; + + + +//----------------------------------------------------------------------------- +// Explosions +//----------------------------------------------------------------------------- + + + +datablock ExplosionData(LifelikeGroundHitSmallExplosion) +{ + //soundProfile = YourSoundDatablock; + lifeTimeMS = 150; + + // Volume + particleEmitter = LifelikeGroundHitSmallSmokeEmitter; + particleDensity = 10; + particleRadius = 1.5; + + // Point emission + emitter[0] = LifelikeGroundHitSmallSmokeEmitter; + emitter[1] = LifelikeGroundHitSmallPointBurstEmitter; + emitter[2] = LifelikeGroundHitSmallDirtBlastEmitter; + emitter[3] = LifelikeGroundHitSmallDirtDebrisEmitter; + + shakeCamera = true; + camShakeFreq = "10.0 11.0 9.0"; + camShakeAmp = "20.0 20.0 20.0"; + camShakeDuration = 1.5; + camShakeRadius = 10.0; + + lightStartRadius = 10.0; + lightEndRadius = 0.0; + lightStartColor = "1 0.9 0.8"; + lightEndColor = "0.8 0.4 0.0"; + lightStartBrightness = 2.0; + lightEndBrightness = 0.0; + +}; \ No newline at end of file diff --git a/Templates/Modules/RealisticVFX/Datablocks/LifelikeExp_SimpleLarge.cs b/Templates/Modules/RealisticVFX/Datablocks/LifelikeExp_SimpleLarge.cs new file mode 100644 index 000000000..005a0430a --- /dev/null +++ b/Templates/Modules/RealisticVFX/Datablocks/LifelikeExp_SimpleLarge.cs @@ -0,0 +1,202 @@ +//----------------------------------------------------------------------------- +// Lifelike Effects Pack - Large Simple Explosion +// Copyright Adam deGrandis 2012 +// +// Thanks for your support! +// +//----------------------------------------------------------------------------- +//exec ("art/datablocks/LifelikeEffectsPack/LifelikeExp_SimpleLarge.cs"); + + +//----------------------------------------------------------------------------- +// Emitters +//----------------------------------------------------------------------------- + + +datablock ParticleData(SimpleLargeSmokeParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/smoke1"; + dragCoeffiecient = 0.0; + gravityCoefficient = -0.05; + inheritedVelFactor = 0.0; + constantAcceleration = 0.0; + lifetimeMS = 3300; + lifetimeVarianceMS = 200; + spinRandomMin = -50.0; + spinRandomMax = 50.0; + + colors[0] = "0.1 0.1 0.1 1"; + colors[1] = "0.7 0.7 0.6 1"; + colors[2] = "1 0.9 0.8 0.0"; + + sizes[0] = 4; + sizes[1] = 8; + sizes[2] = 12; + + times[0] = 0.0; + times[1] = 0.1; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(SimpleLargeSmokeEmitter) +{ + ejectionPeriodMS = 20; + periodVarianceMS = 5; + ejectionVelocity = 2; + velocityVariance = 0; + thetaMin = 0; + thetaMax = 120; + phiReferenceVel = 0; + phiVariance = 360; + ejectionoffset = 2; + particles = "SimpleLargeSmokeParticle"; + blendStyle = "NORMAL"; +}; + +datablock ParticleData(SimpleLargeSparksParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/spark1"; + lifetimeMS = 250; + lifetimeVarianceMS = 20; + + colors[0] = "1.0 0.9 0.8 0.2"; + colors[1] = "1.0 0.9 0.8 1"; + colors[2] = "0.8 0.4 0 0.0"; + + sizes[0] = 1; + sizes[1] = 3; + sizes[2] = 1; + + times[0] = 0.0; + times[1] = 0.5; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(SimpleLargeSparksEmitter) +{ + ejectionPeriodMS = 10; + periodVarianceMS = 5; + ejectionVelocity = 25; + velocityVariance = 10; + thetaMin = 0; + thetaMax = 70; + phiReferenceVel = 0; + phiVariance = 360; + ejectionoffset = 0; + orientOnVelocity = true; + orientParticles = true; + particles = "SimpleLargeSparksParticle"; + blendStyle = "ADDITIVE"; +}; + +datablock ParticleData(SimpleLargeFireballParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/fireball"; + gravityCoefficient = -0.1; + lifetimeMS = 500; + lifetimeVarianceMS = 100; + spinRandomMin = -100.0; + spinRandomMax = 100.0; + + colors[0] = "1 0.9 0.8 1"; + colors[1] = "0.9 0.5 0.1 1"; + colors[2] = "0.8 0.4 0.0 0"; + + sizes[0] = 1; + sizes[1] = 7; + sizes[2] = 6; + + times[0] = 0.0; + times[1] = 0.3; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(SimpleLargeFireballEmitter) +{ + ejectionPeriodMS = 10; + periodVarianceMS = 3; + ejectionVelocity = 3; + velocityVariance = 2; + thetaMin = 0; + thetaMax = 120; + phiReferenceVel = 0; + phiVariance = 360; + ejectionoffset = 2.5; + + particles = "SimpleLargeFireballParticle"; + blendStyle = "ADDITIVE"; +}; + +datablock ParticleData(SimpleLargeGlowParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/flame1"; + gravityCoefficient = -0.3; + lifetimeMS = 400; + lifetimeVarianceMS = 100; + spinRandomMin = -200.0; + spinRandomMax = 200.0; + + colors[0] = "0.9 0.8 1 0.4"; + colors[1] = "0.8 0.4 0.0 0.1"; + colors[2] = "0.8 0.4 0.0 0"; + + sizes[0] = 7; + sizes[1] = 11; + sizes[2] = 5; + + times[0] = 0.0; + times[1] = 0.3; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(SimpleLargeGlowEmitter) +{ + ejectionPeriodMS = 40; + periodVarianceMS = 5; + ejectionVelocity = 3; + velocityVariance = 2; + thetaMin = 0; + thetaMax = 120; + phiReferenceVel = 0; + phiVariance = 360; + + particles = "SimpleLargeGlowParticle"; + blendStyle = "ADDITIVE"; +}; + + + +//----------------------------------------------------------------------------- +// Explosions +//----------------------------------------------------------------------------- + + +datablock ExplosionData(LifelikeSimpleLargeExplosion) +{ + //soundProfile = YourSoundDatablock; + lifeTimeMS = 125; + + // Volume + particleEmitter = SimpleLargeGlowEmitter; + particleDensity = 20; + particleRadius = 2; + + // Point emission + emitter[0] = SimpleLargeSmokeEmitter; + emitter[1] = SimpleLargeFireballEmitter; + emitter[2] = SimpleLargeSparksEmitter; + + shakeCamera = true; + camShakeFreq = "10.0 11.0 9.0"; + camShakeAmp = "20.0 20.0 20.0"; + camShakeDuration = 1.5; + camShakeRadius = 20.0; + + lightStartRadius = 20.0; + lightEndRadius = 0.0; + lightStartColor = "1 0.9 0.8"; + lightEndColor = "0.8 0.4 0.0"; + lightStartBrightness = 2.0; + lightEndBrightness = 0.0; + +}; \ No newline at end of file diff --git a/Templates/Modules/RealisticVFX/Datablocks/LifelikeExp_SimpleSmall.cs b/Templates/Modules/RealisticVFX/Datablocks/LifelikeExp_SimpleSmall.cs new file mode 100644 index 000000000..e9ffdea4a --- /dev/null +++ b/Templates/Modules/RealisticVFX/Datablocks/LifelikeExp_SimpleSmall.cs @@ -0,0 +1,203 @@ +//----------------------------------------------------------------------------- +// Lifelike Effects Pack - Small Simple Explosion +// Copyright Adam deGrandis 2012 +// +// Thanks for your support! +// +//----------------------------------------------------------------------------- +//exec ("art/datablocks/LifelikeEffectsPack/LifelikeExp_SimpleSmall.cs"); + + +//----------------------------------------------------------------------------- +// Emitters +//----------------------------------------------------------------------------- + + + +datablock ParticleData(SimpleSmallSmokeParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/smoke1"; + dragCoeffiecient = 0.0; + gravityCoefficient = -0.02; + inheritedVelFactor = 0.0; + constantAcceleration = 0.0; + lifetimeMS = 3300; + lifetimeVarianceMS = 200; + spinRandomMin = -50.0; + spinRandomMax = 50.0; + + colors[0] = "0.1 0.1 0.1 1"; + colors[1] = "0.7 0.7 0.6 1"; + colors[2] = "1 0.9 0.8 0.0"; + + sizes[0] = 2; + sizes[1] = 4; + sizes[2] = 6; + + times[0] = 0.0; + times[1] = 0.1; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(SimpleSmallSmokeEmitter) +{ + ejectionPeriodMS = 20; + periodVarianceMS = 5; + ejectionVelocity = 1; + velocityVariance = 0; + thetaMin = 0; + thetaMax = 120; + phiReferenceVel = 0; + phiVariance = 360; + ejectionoffset = 0.7; + particles = "SimpleSmallSmokeParticle"; + blendStyle = "NORMAL"; +}; + +datablock ParticleData(SimpleSmallSparksParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/spark1"; + lifetimeMS = 200; + lifetimeVarianceMS = 20; + + colors[0] = "1.0 0.9 0.8 0.2"; + colors[1] = "1.0 0.9 0.8 1"; + colors[2] = "0.8 0.4 0 0.0"; + + sizes[0] = 0.5; + sizes[1] = 2; + sizes[2] = 0.5; + + times[0] = 0.0; + times[1] = 0.5; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(SimpleSmallSparksEmitter) +{ + ejectionPeriodMS = 10; + periodVarianceMS = 5; + ejectionVelocity = 20; + velocityVariance = 10; + thetaMin = 0; + thetaMax = 70; + phiReferenceVel = 0; + phiVariance = 360; + ejectionoffset = 0; + orientOnVelocity = true; + orientParticles = true; + particles = "SimpleSmallSparksParticle"; + blendStyle = "ADDITIVE"; +}; + +datablock ParticleData(SimpleSmallFireballParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/fireball"; + gravityCoefficient = -0.1; + lifetimeMS = 500; + lifetimeVarianceMS = 100; + spinRandomMin = -100.0; + spinRandomMax = 100.0; + + colors[0] = "1 0.9 0.8 1"; + colors[1] = "0.9 0.5 0.1 1"; + colors[2] = "0.8 0.4 0.0 0"; + + sizes[0] = 1; + sizes[1] = 4; + sizes[2] = 3; + + times[0] = 0.0; + times[1] = 0.3; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(SimpleSmallFireballEmitter) +{ + ejectionPeriodMS = 10; + periodVarianceMS = 3; + ejectionVelocity = 2; + velocityVariance = 1; + thetaMin = 0; + thetaMax = 120; + phiReferenceVel = 0; + phiVariance = 360; + ejectionoffset = 1; + + particles = "SimpleSmallFireballParticle"; + blendStyle = "ADDITIVE"; +}; + +datablock ParticleData(SimpleSmallGlowParticle) +{ + textureName = "art/shapes/particles/LifelikeEffectsPack/flame1"; + gravityCoefficient = -0.3; + lifetimeMS = 400; + lifetimeVarianceMS = 100; + spinRandomMin = -200.0; + spinRandomMax = 200.0; + + colors[0] = "0.9 0.8 1 0.4"; + colors[1] = "0.8 0.4 0.0 0.1"; + colors[2] = "0.8 0.4 0.0 0"; + + sizes[0] = 3; + sizes[1] = 6; + sizes[2] = 2; + + times[0] = 0.0; + times[1] = 0.3; + times[2] = 1.0; +}; + +datablock ParticleEmitterData(SimpleSmallGlowEmitter) +{ + ejectionPeriodMS = 40; + periodVarianceMS = 5; + ejectionVelocity = 3; + velocityVariance = 2; + thetaMin = 0; + thetaMax = 120; + phiReferenceVel = 0; + phiVariance = 360; + + particles = "SimpleSmallGlowParticle"; + blendStyle = "ADDITIVE"; +}; + + + +//----------------------------------------------------------------------------- +// Explosions +//----------------------------------------------------------------------------- + + +datablock ExplosionData(LifelikeSimpleSmallExplosion) +{ + //soundProfile = YourSoundDatablock; + lifeTimeMS = 125; + + // Volume + particleEmitter = SimpleSmallGlowEmitter; + particleDensity = 20; + particleRadius = 1; + + // Point emission + emitter[0] = SimpleSmallSmokeEmitter; + emitter[1] = SimpleSmallFireballEmitter; + emitter[2] = SimpleSmallSparksEmitter; + + shakeCamera = true; + camShakeFreq = "10.0 11.0 9.0"; + camShakeAmp = "20.0 20.0 20.0"; + camShakeDuration = 1.5; + camShakeRadius = 5.0; + + lightStartRadius = 10.0; + lightEndRadius = 0.0; + lightStartColor = "1 0.9 0.8"; + lightEndColor = "0.8 0.4 0.0"; + lightStartBrightness = 2.0; + lightEndBrightness = 0.0; + +}; \ No newline at end of file diff --git a/Templates/Modules/RealisticVFX/Images/dirtBlast1.png b/Templates/Modules/RealisticVFX/Images/dirtBlast1.png new file mode 100644 index 0000000000000000000000000000000000000000..26bb7ce34d6bb902e60013ec99bc41da533869be GIT binary patch literal 404142 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

    3MjNG)y@X153t?$Sj`ktt>iHq}%@QYn6X93`*Mb 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