datablock AudioProfile(GemSparkleSound){ filename = "./GemSparkle.wav"; description = AudioClosest3d; preload = true;};// Emitters and Particlesdatablock ParticleData(gemShimmerParticle){ dragCoefficient = 4; gravityCoefficient = 0; inheritedVelFactor = 0; constantAcceleration = 0; lifetimeMS = 150; lifetimeVarianceMS = 0; textureName = "base/lighting/flare"; spinSpeed = 0.2; spinRandomMin = 0; spinRandomMax = 360; colors[0] = "1 1 1 1"; colors[1] = "1 1 1 1"; colors[2] = "1 1 1 1"; sizes[0] = 0; sizes[1] = 0.7; sizes[2] = 0.05; times[0] = 0; times[1] = 0.05; times[2] = 0.15; useInvAlpha = false;};datablock ParticleEmitterData(gemShimmerEmitter){ uiName = ""; ejectionPeriodMS = 150; periodVarianceMS = 20; ejectionVelocity = 0; ejectionOffset = 0.4; thetaMin = 90; thetaMax = 90; phiReferenceVel = 0; phiVariance = 360; overrideAdvance = false; useEmitterColors = true; colors[0] = "1 1 1 1"; colors[1] = "1 1 1 1"; colors[2] = "1 1 1 1"; particles = "gemShimmerParticle";};datablock ShapeBaseImageData(gemShimmerImage){ shapeFile = "base/data/shapes/empty.dts"; emap = false; stateName[0] = "Fire"; stateTransitionOnTimeout[0] = "Fire"; stateWaitForTimeout[0] = true; stateTimeoutValue[0] = 1000; stateEmitter[0] = gemShimmerEmitter; stateEmitterTime[0] = 1000;};//////////////////////////////////////////////////////////// Gems Item Datas//emeraldfunction RPGxEmeraldItem::onAdd(%this, %obj){ %obj.mountImage(gemShimmerImage,0); %obj.playAudio(0, GemsparkleSound); Parent::onAdd(%this, %obj);}function RPGxEmeraldImage::onMount(%this, %obj, %slot){ %obj.mountImage(gemShimmerImage,1); Parent::onMount(%this, %obj, %slot);}function RPGxEmeraldImage::onUnMount(%this, %obj, %slot){ %obj.unMountImage(1); %obj.stopAudio(0); Parent::onUnMount(%this, %obj, %slot);}//rubyfunction RPGxRubyItem::onAdd(%this, %obj){ %obj.mountImage(gemShimmerImage,0); %obj.playAudio(0, GemsparkleSound); Parent::onAdd(%this, %obj);}function RPGxRubyImage::onMount(%this, %obj, %slot){ %obj.mountImage(gemShimmerImage,1); Parent::onMount(%this, %obj, %slot);}function RPGxRubyImage::onUnMount(%this, %obj, %slot){ %obj.unMountImage(1); %obj.stopAudio(0); Parent::onUnMount(%this, %obj, %slot);}//Sapphirefunction RPGxSapphireItem::onAdd(%this, %obj){ %obj.mountImage(gemShimmerImage,0); %obj.playAudio(0, GemsparkleSound); Parent::onAdd(%this, %obj);}function RPGxSapphireImage::onMount(%this, %obj, %slot){ %obj.mountImage(gemShimmerImage,1); Parent::onMount(%this, %obj, %slot);}function RPGxSapphireImage::onUnMount(%this, %obj, %slot){ %obj.unMountImage(1); %obj.stopAudio(0); Parent::onUnMount(%this, %obj, %slot);}//Topazfunction RPGxTopazItem::onAdd(%this, %obj){ %obj.mountImage(gemShimmerImage,0); %obj.playAudio(0, GemsparkleSound); Parent::onAdd(%this, %obj);}function RPGxTopazImage::onMount(%this, %obj, %slot){ %obj.mountImage(gemShimmerImage,1); Parent::onMount(%this, %obj, %slot);}function RPGxTopazImage::onUnMount(%this, %obj, %slot){ %obj.unMountImage(1); %obj.stopAudio(0); Parent::onUnMount(%this, %obj, %slot);}//Diamondfunction RPGxDiamondItem::onAdd(%this, %obj){ %obj.mountImage(gemShimmerImage,0); %obj.playAudio(0, GemsparkleSound); Parent::onAdd(%this, %obj);}function RPGxDiamondImage::onMount(%this, %obj, %slot){ %obj.mountImage(gemShimmerImage,1); Parent::onMount(%this, %obj, %slot);}function RPGxDiamondImage::onUnMount(%this, %obj, %slot){ %obj.unMountImage(1); %obj.stopAudio(0); Parent::onUnMount(%this, %obj, %slot);}//Onyxfunction RPGxOnyxItem::onAdd(%this, %obj){ %obj.mountImage(gemShimmerImage,0); %obj.playAudio(0, GemsparkleSound); Parent::onAdd(%this, %obj);}function RPGxOnyxImage::onMount(%this, %obj, %slot){ %obj.mountImage(gemShimmerImage,1); Parent::onMount(%this, %obj, %slot);}function RPGxOnyxImage::onUnMount(%this, %obj, %slot){ %obj.unMountImage(1); %obj.stopAudio(0); Parent::onUnMount(%this, %obj, %slot);}//Amethystfunction RPGxAmethystItem::onAdd(%this, %obj){ %obj.mountImage(gemShimmerImage,0); %obj.playAudio(0, GemsparkleSound); Parent::onAdd(%this, %obj);}function RPGxAmethystImage::onMount(%this, %obj, %slot){ %obj.mountImage(gemShimmerImage,1); Parent::onMount(%this, %obj, %slot);}function RPGxAmethystImage::onUnMount(%this, %obj, %slot){ %obj.unMountImage(1); %obj.stopAudio(0); Parent::onUnMount(%this, %obj, %slot);}