void main()
{
// Retrieve the object/item being used
object oItem = GetEventParamObject(0);
// Assuming OBJECT_SELF is the PC using the item
object oPC = OBJECT_SELF;
string sPCName = GetName(oPC);
// Command the PC to speak a string immediately
AssignCommand(oPC, ActionSpeakString("[" + sPCName + " uncorks a golden bottle and slips the single pill into their mouth, swallowing it down with a swig of water.]"));
if(GetHasFeat(FEAT_DIAMOND_BODY, oPC) || GetHasFeat(FEAT_VENOM_IMMUNITY, oPC))
{
// If the PC has either feat, they are immune to the effects
SendMessageToPC(oPC, "You swallow the pill, but nothing happens. Your body seems to reject the effects, leaving you unaffected.");
}
else
{
// Send initial effects message
DelayCommand(5.0, SendMessageToPC(oPC, "[The pill takes hold almost instantly. A warm surge rushes through your body, leaving you with a sudden, unshakeable confidence. Your mind buzzes with energy, and every thought feels like brilliance.]"));
DelayCommand(15.0, SendMessageToPC(oPC, "[Your heartbeat quickens, not in panic, but in excitement. You feel alive, powerful. Talking feels almost effortless now, and the words just pour out of you. You start speaking... and can't stop.]"));
DelayCommand(30.0, AssignCommand(oPC, ActionSpeakString("[" + sPCName + " starts rambling enthusiastically, their voice animated and brimming with boldness.]")));
DelayCommand(45.0, SendMessageToPC(oPC, "[A creeping heat begins to build deep inside you. Everything you look at seems tantalizing, exciting, and every breath you take feels charged with desire. Your thoughts wander... and then fixate on an unexpected craving?pasta. Lots of pasta.]"));
// Confidence continues to build
DelayCommand(60.0, SendMessageToPC(oPC, "[The world seems brighter, sharper. You are certain that nothing can stop you now. Your body tingles with energy, and everything feels possible?no, inevitable. You can do *anything*.]"));
DelayCommand(90.0, AssignCommand(oPC, ActionSpeakString("[" + sPCName + " smirks confidently, their posture straightening as they speak with an unshakable certainty.]")));
// Libido increases, hunger for pasta intensifies
DelayCommand(120.0, SendMessageToPC(oPC, "[An intoxicating heat floods your senses. Desire swells in you, and your mind races with thoughts of indulgence. You crave connection... and food?pasta, more than anything else. A ravenous hunger for it takes hold, and nothing else matters.]"));
DelayCommand(150.0, SendMessageToPC(oPC, "[Your every thought is split between an overwhelming lust and the absurd need for endless amounts of pasta. You can barely focus, the cravings twisting inside you, almost maddening in their intensity.]"));
DelayCommand(180.0, AssignCommand(oPC, ActionSpeakString("[" + sPCName + " mutters something about pasta, eyes slightly glazed with hunger and desire.]")));
// Increasing aggressiveness and impatience
DelayCommand(240.0, SendMessageToPC(oPC, "[Your confidence, once thrilling, now teeters on the edge of aggression. Patience is gone?every small annoyance ignites a spark of anger. You feel the desire to lash out, to take what you want. The world is yours to dominate.]"));
DelayCommand(300.0, SendMessageToPC(oPC, "[Everything and everyone around you is too slow, too indecisive. You feel a sharp urge to act, to demand, to *force* things to go your way. Control is all you want, and it?s just out of reach.]"));
DelayCommand(360.0, AssignCommand(oPC, ActionSpeakString("[" + sPCName + " clenches their fists, their face tense, their patience nearly gone. There?s a dangerous fire in their eyes.]")));
// Violent urges escalate
DelayCommand(450.0, SendMessageToPC(oPC, "[The heat in your body turns almost to rage. Every thought that doesn?t serve your desires feels like an affront. It would be so easy to crush the obstacles in your way. You can feel the violent impulses rise within you, like a storm waiting to break.]"));
// Peak aggression
DelayCommand(540.0, AssignCommand(oPC, ActionSpeakString("[" + sPCName + " grits their teeth, their movements sharp and aggressive, like a predator sizing up its prey.]")));
// Beginning of the crash
DelayCommand(600.0, SendMessageToPC(oPC, "[The power, the confidence, it starts to slip away. What once felt exhilarating now leaves a hollow pit in your stomach. The sharp, unrelenting energy fades, replaced by a creeping unease.]"));
// Anxiety grows
DelayCommand(660.0, SendMessageToPC(oPC, "[The high is crashing down fast. Your mind, once so sharp and filled with certainty, now drowns in doubt. Everyone is watching you, judging you. Why are they staring? Why did you say that? You start to panic...]"));
DelayCommand(720.0, SendMessageToPC(oPC, "[Your heart pounds again, but this time with fear. The confidence is gone, replaced by a suffocating anxiety. Every social interaction feels like a trap. You can?t shake the feeling that everyone is talking about you.]"));
// Full crash, social anxiety peaks
DelayCommand(840.0, SendMessageToPC(oPC, "[You feel utterly exposed. Your face burns with embarrassment, and your mind races with shame over every word, every action. You need to get away from people, to hide, to escape.]"));
DelayCommand(900.0, AssignCommand(oPC, ActionSpeakString("[" + sPCName + " avoids eye contact, their earlier bravado crumbling into nervous, awkward glances.]")));
// The final stages of withdrawal
DelayCommand(1000.0, SendMessageToPC(oPC, "[A cold sweat breaks out across your skin. You feel small, insignificant. The crash hits hard?your once limitless confidence replaced by overwhelming self-doubt. You just want to disappear.]"));
}
}