bool WeaponCreated[40]; int NPC_SCRIPT_DEFENSE[]; int currentDamage; const int CR_STAT_MUSC = 25; //Script 19 global script active{ void run(){ while(true){ Set_Weapon_Damage(); doenemyhit(1); Waitdraw(); XP(); AutoGhost(); DrawGhostFFCs(); Waitframe(); } } } item script SwordofLight { void run () { int currLevel = Game->Counter[CR_LEVEL]; int halfLevel = currLevel * 0.5; int itemdamage; int baseItemDamage = ( rollDie(10) + rollDie(10) + rollDie(10) ); int levelDamage = rollD4Level(currLevel); int totalItemDamage = baseItemDamage + levelDamage; itemdamage = totalItemDamage + getMuscStat(); currentDamage = itemdamage; int baseLifeCost = rollDie(10); int lifeCost = rollDie(10) + rollDie(10) + rollDie(10); int lifeCostByLevel = halfLevel * lifeCost; int lifeDrainAmount = baseLifeCost + lifeCostByLevel; bool enoughLife; bool enoughMagic; int baseMagicCost = rollDie(10); int magicCost = rollDie(10) + rollDie(10) + rollDie(10) + rollDie(10); int magicCostByLevel = halfLevel * magicCost; int magicDrainAmount = baseMagicCost + magicCostByLevel; if ( magicDrainAmount < Game->Counter[CR_MAGIC] ) { enoughMagic = true; } if ( enoughMagic == true ) { Game->Counter[CR_MAGIC] -= magicDrainAmount; //Set this to -= magicDrainAmount when I am able to repace sword damage. } else { Game->PlaySound(SFX_ERROR); Game->Counter[CR_MAGIC] = 0; WeaponCreated[0] = true; } } } void Set_Weapon_Damage(int index){ for(int i; i<40; i++){ if(WeaponCreated[i]){ for(int j; j < Screen->NumLWeapons(); j++){ lweapon l = Screen->LoadLWeapon(j); if(l->ID == i && l->Misc[index] == 0){ l->Misc[index] = currentDamage; } } } } } int rollDie(int type){ int n = Rand(1, type); return n; } int roll1d4() { int n = Rand(1, 4); return n; } int rolld4Level(int level) { int total; if ( level == 0 ) { total = ( roll1d4() ); } else if ( level == 1 ) { total = ( roll1d4()); } else if ( level == 2 ) { total = ( roll1d4() + roll1d4() ); } else if ( level == 3 ) { total = ( roll1d4() + roll1d4() + roll1d4() ); } else if ( level == 4 ) { total = ( roll1d4() + roll1d4() + roll1d4() + roll1d4() ); } else if ( level == 5 ) { total = ( roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() ); } else if ( level == 6 ) { total = ( roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() ); } else if ( level == 7 ) { total = ( roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() ); } else if ( level == 8 ) { total = ( roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() ); } else if ( level == 9 ) { total = ( roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() ); } else if ( level == 10 ) { total = ( roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() ); } else if ( level == 11 ) { total = ( roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() ); } else if ( level == 12 ) { total = ( roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() ); } else if ( level == 13 ) { total = ( roll1d4() + roll1d4() roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() ); } else if ( level == 14 ) { total = ( roll1d4() + roll1d4() roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() ); } else if ( level == 15 ) { total = ( roll1d4() + roll1d4() roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() ); } else if ( level == 16 ) { total = ( roll1d4() + roll1d4() roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() ); } else if ( level == 17 ) { total = ( roll1d4() + roll1d4() roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() ); } else if ( level == 18 ) { total = ( roll1d4() + roll1d4() roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() ); } else if ( level == 19 ) { total = ( roll1d4() + roll1d4() roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() ); } else if ( level == 20 ) { total = ( roll1d4() + roll1d4() roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() ); } else if ( level > 20 ) { total = ( roll1d4() + roll1d4() roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() + roll1d4() ); } return total; } int getMuscStat(){ int stat = CR_STAT_MUSC; return stat; }