English:
Well, it's time for my daily contribution... I want to show my very: "Firm" intention of: How I intend to do to so many people who are involved in the development of this Game... just for horribles: "Economic Interests"... and that because of their: "Ambition" (indirectly hurts everyone else)... finally, they find it necessary to leave the Area.
Spanish:
Bueno, es hora de mi contribución diaria... Quiero mostrar mi muy: "firme" intención de: Cómo me propongo hacer a tanta gente que está involucrada en el desarrollo de este Juego... solo por horribles: "Intereses Económicos"... y que por su: "Ambición" (perjudican indirectamente a todos los demás)... finalmente, les resulta necesario abandonar la Zona.
#define NEM_ADD_SHREK_NPC_CUSTOM // Add "Shrek" NPC: 580 (21.08.20)
DSPlaySound.h File on a Enumerator (without name):
Code:
#ifdef NEM_ADD_SHREK_NPC_CUSTOM
SOUND_SHREK_NPC_IDLE_1, // nShrek.wav
#endif // NEM_ADD_SHREK_NPC_CUSTOM
MAX_BUFFER // -> Check this fuckin* shit and sure that your added: "NEW Sound ID (*.wav) Format", exists: "Before".
_enum.h File on a Enumerator (very, very Long):
Code:
#ifdef NEM_ADD_SHREK_NPC_CUSTOM
MODEL_SHREK,
#endif // NEM_ADD_SHREK_NPC_CUSTOM
MODEL_NPC_END , // -> Check this and add your: "Fuckin*" new case of: "Object" before.
ZzzOpenData.cpp File on a Function Called: "OpenNpc(int Type)"
Code:
#endif // LEM_ADD_LUCKYITEM // -> Add bellow of this line:
#ifdef NEM_ADD_SHREK_NPC_CUSTOM
case MODEL_SHREK:
AccessModel(MODEL_SHREK,"Data\\Npc\\","shrek");
OpenTexture(MODEL_SHREK,"Npc\\");
LoadWaveFile(SOUND_SHREK_NPC_IDLE_1,"Data\\Sound\\nShrek.wav");
break;
#endif // NEM_ADD_SHREK_NPC_CUSTOM
ZzzCharacter.cpp File on Function Called: "Setting_Monster(CHARACTER *c,int Type,int PositionX,int PositionY)"
Code:
#ifdef LEM_ADD_LUCKYITEM
|| Type == 579 // -> It's better if you add your: "Fuckin*" new: "NPC Type Object" directly bellow of this line.
#endif // LEM_ADD_LUCKYITEM
#ifdef NEM_ADD_SHREK_NPC_CUSTOM
|| Type == 580 // -> In my case I use MonsterID: "580", because my: "Client" is only: "Season 4.6" Emulated + some things of: S5, but if you trying to use any: "MuServer" of: "Ex7XX++" you must: "Verify" your used: "MonsterID or NPCID" to your added Model in Game.
#endif // NEM_ADD_SHREK_NPC_CUSTOM
ZzzCharacter.cpp File on Function Called: "*CreateMonster(int Type,int PositionX,int PositionY,int Key)"
Code:
#endif // ASG_ADD_KARUTAN_NPC // -> Bellow of this line add:
#ifdef NEM_ADD_SHREK_NPC_CUSTOM
case 580: // Shrek the Merchant
{
OpenNpc(MODEL_SHREK);
c = CreateCharacter(Key, MODEL_SHREK, PositionX, PositionY);
strcpy(c->ID,"Shrek");
c->Object.Scale = 1.0f;
}
break;
#endif // NEM_ADD_SHREK_NPC_CUSTOM
ZzzCharacter.cpp File on Function Called: "MoveCharacterVisual(CHARACTER *c, OBJECT *o)":
Code:
#ifdef NEM_ADD_SHREK_NPC_CUSTOM
case MODEL_SHREK:
{
if(rand()%256==0)
PlayBuffer(SOUND_SHREK_NPC_IDLE_1);
// ----
o->BlendMesh = 4;
o->BlendMeshLight = Luminosity;
Vector(Luminosity*0.4f,Luminosity*1.f,Luminosity*0.f,Light);
AddTerrainLight(o->Position[0],o->Position[1],Light,3,PrimaryTerrainLight);
// ----
Vector(0.4f,1.f,0.f,Light); Vector(0.f,0.f,0.f,p);
// ----
if(o->CurrentAction==0 && o->AnimationFrame>=1.f && o->AnimationFrame<=7.f)
{
if(rand()%2==0)
{
Vector(0.1f,0.15f,0.1f,Light);
float Scale = (int)WorldTime%3600/(float)10.f;
b->TransformPosition(BoneTransform[1],p,Position,true);
CreateParticle(BITMAP_EFFECT,Position,o->Angle,Light,4,Scale);
CreateParticle(BITMAP_EFFECT,Position,o->Angle,Light,5,Scale);
}
else if(rand()%7==0)
{
Vector(0.1f,0.45f,0.15f,Light);
float Scale = -(int)WorldTime%3600/(float)10.f;
b->TransformPosition(BoneTransform[1],p,Position,true);
CreateParticle(BITMAP_EFFECT,Position,o->Angle,Light,4,Scale);
CreateParticle(BITMAP_EFFECT,Position,o->Angle,Light,5,Scale);
}
}
}
break;
#endif // NEM_ADD_SHREK_NPC_CUSTOM
But how: "Condition" you must use my Model... anyways... I make his: "Effects" for that any monster model/npc model with at least: 1 bone, can works.
Anyways:
Download my: Models,Textures and Audios (that I make for this):
https://www.mediafire.com/folder/2an...res_and_Audios
PS: If you made all: "Fine", you must have something how this (in Game):