Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 7 additions & 2 deletions wurst/TEVE/Systems/HeroRevive.wurst
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,12 @@ function reviveHeroParams(unit triggerUnit, player triggerPlayer, int triggerPla

if timerWindow_heroRevive[triggerPlayerId] == null// or not triggerUnit.isAlive()
let owner = triggerUnit.getOwner()
timerWindow_heroRevive[triggerPlayerId] = CreateTimerDialogBJ(timer_heroRevieve[triggerPlayerId], playerNames[(1+GetPlayerId(owner))])
// Fix array bounds issue by ensuring valid player ID
let playerNameIndex = 1 + GetPlayerId(owner)
if playerNameIndex >= 0 and playerNameIndex <= INDEX_OF_LAST_PLAYER
timerWindow_heroRevive[triggerPlayerId] = CreateTimerDialogBJ(timer_heroRevieve[triggerPlayerId], playerNames[playerNameIndex])
else
timerWindow_heroRevive[triggerPlayerId] = CreateTimerDialogBJ(timer_heroRevieve[triggerPlayerId], "Unknown Player")
if localPlayer == triggerPlayer
TimerDialogDisplay(timerWindow_heroRevive[triggerPlayerId],true)
else
Expand All @@ -102,7 +107,7 @@ function reviveHeroParams(unit triggerUnit, player triggerPlayer, int triggerPla
heroesWasInDungeonAndDied.remove(triggerUnit)

//print(timer_heroRevieve[triggerPlayerId].getElapsed())
if not timerWindow_heroRevive[triggerPlayerId] == null
if timerWindow_heroRevive[triggerPlayerId] != null
DestroyTimerDialog(timerWindow_heroRevive[triggerPlayerId])
timerWindow_heroRevive[triggerPlayerId] = null

Expand Down
47 changes: 26 additions & 21 deletions wurst/TEVE/Systems/Items_Pickup_Drop.wurst
Original file line number Diff line number Diff line change
Expand Up @@ -651,29 +651,34 @@ function dropItem()

// Check for pickup or drop
nullTimer() ->
if (not isBuy and triggerUnit.hasItem(triggerItem) or heroOwnedSameItem.getCharges() != itemCharges) and itemCharges != 1
//print("Picked item") // debug
dropCharges = chargesVirt
if heroOwnedSameItem == triggerItem
chargesVirt = 0
//isDrop = true // Remove drop charges
if heroOwnedSameItem != null
if (not isBuy and triggerUnit.hasItem(triggerItem) or heroOwnedSameItem.getCharges() != itemCharges) and itemCharges != 1
//print("Picked item") // debug
dropCharges = chargesVirt
if heroOwnedSameItem == triggerItem
chargesVirt = 0
//isDrop = true // Remove drop charges

//chargesVirt are unchanged

//chargesVirt are unchanged

else if triggerUnit.getItemById(itmType) == null
//print("Dropped item") // debug
dropCharges = chargesVirt * -1
chargesVirt = 0
else if triggerUnit.getItemById(itmType) == null
//print("Dropped item") // debug
dropCharges = chargesVirt * -1
chargesVirt = 0

//print("Charges Virtual Old:"+heroOwnedSameItem.getChargesVirtual(tPid).toString())
//print("Drop Charges Change:"+dropCharges.toString())
//print("Charges Virtual Change:"+chargesVirt.toString())
//print("Charges Virtual Old:"+heroOwnedSameItem.getChargesVirtual(tPid).toString())
//print("Drop Charges Change:"+dropCharges.toString())
//print("Charges Virtual Change:"+chargesVirt.toString())
addChargesDropped(tPid, itmType, dropCharges, true)
heroOwnedSameItem.addChargesVirtual(chargesVirt, tPid)
heroOwnedSameItem.setPlayer(triggerPlayer, true)
//print("Charges Virtual Old:"+heroOwnedSameItem.getChargesVirtual(tPid).toString())
//print("Drop Charges Change:"+dropCharges.toString())
//print("Charges Virtual Change:"+chargesVirt.toString())
//print("Charges Virtual Old:"+heroOwnedSameItem.getChargesVirtual(tPid).toString())
//print("Drop Charges Change:"+dropCharges.toString())
//print("Charges Virtual Change:"+chargesVirt.toString())
addChargesDropped(tPid, itmType, dropCharges, true)
heroOwnedSameItem.addChargesVirtual(chargesVirt, tPid)
heroOwnedSameItem.setPlayer(triggerPlayer, true)
//print("Charges Virtual New:"+heroOwnedSameItem.getChargesVirtual(tPid).toString())
else
// Handle case where heroOwnedSameItem is null
addChargesDropped(tPid, itmType, dropCharges, true)
//print("Charges Virtual New:"+heroOwnedSameItem.getChargesVirtual(tPid).toString())

//list_pId_map_itemType_droppedStacks.get(tPid).put(itmType, list_pId_map_itemType_droppedStacks.get(tPid).get(itmType)+chargesVirt)
Expand Down