diff options
-rw-r--r-- | npc/005-1-1/main.txt | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/npc/005-1-1/main.txt b/npc/005-1-1/main.txt index 777739726..e2df6a55a 100644 --- a/npc/005-1-1/main.txt +++ b/npc/005-1-1/main.txt @@ -113,11 +113,37 @@ OnSpawn: .@mobID=areamonster(.@MAP$, 23, 22, 35, 34, l("Maggot"), Maggot, 1, "Nylo#Marggo::OnMurder"); htput @MARGGO, str(.@mobID), 1; + // If this is a repeat, make it stronger + if (getq(CandorQuest_Marggo)) { + .@hp = getunitdata(.@mobID, UDT_MAXHP); + .@sp = getunitdata(.@mobID, UDT_SPEED); + .@mult = limit(1, (REBIRTH * 100) + BaseLevel - 6, 700); + .@hp = .@hp + (70 * .@mult); // Standard multiplier is 40 + .@sp = limit(50, .@sp - (.@mult*2), 800); + setunitdata(.@mobID, UDT_MAXHP, .@hp); + setunitdata(.@mobID, UDT_HP, .@hp); + setunitdata(.@mobID, UDT_SPEED, .@sp); + setunitdata(.@mobID, UDT_CANMOVETICK, 0); + } + // 50% chances to spawn two maggots at once if (any(true, false) && @TOTAL_MRG < 8) { @TOTAL_MRG+=1; .@mobID=areamonster(.@MAP$, 23, 22, 35, 34, l("Maggot"), Maggot, 1, "Nylo#Marggo::OnMurder"); htput @MARGGO, str(.@mobID), 1; + + // Again, if this is a repeat, make it stronger + if (getq(CandorQuest_Marggo)) { + .@hp = getunitdata(.@mobID, UDT_MAXHP); + .@sp = getunitdata(.@mobID, UDT_SPEED); + .@mult = limit(1, (REBIRTH * 100) + BaseLevel - 6, 700); + .@hp = .@hp + (70 * .@mult); // Player multiplier is 40 + .@sp = limit(50, .@sp - (.@mult*2), 800); + setunitdata(.@mobID, UDT_MAXHP, .@hp); + setunitdata(.@mobID, UDT_HP, .@hp); + setunitdata(.@mobID, UDT_SPEED, .@sp); + setunitdata(.@mobID, UDT_CANMOVETICK, 0); + } } end; @@ -275,6 +301,7 @@ while y <= y2: */ +// NOTE: Couldn't we just use OnNPCTouch instead? =/ 005-1-1,23,22,0 script #Marggo000 NPC_CROPS,{ end; } 005-1-1,24,22,0 script #Marggo001 NPC_CROPS,{ end; } 005-1-1,25,22,0 script #Marggo002 NPC_CROPS,{ end; } |