Top leaderboard using Arrays.

Howdy, this is a thread regarding top leaderboard. This implemented code is using arrays.


Player event( Join) -> If variable NOT exists( %player%_arrIndex(saved)) -> Increment variable( GlobalIndex(saved)) -> Set variable( %player%_arrIndex(saved) = GlobalIndex) -> Insert element( arr(TopLeaderboard(saved)), index = GlobalIndex, Value = "0, %player%")

Player event( Kill) -> Increment variable( %player%-kills) -> Combine text( "%player%-kills kills by " + "%player%", %player%-combined-text) -> Replace element( TopLeaderboard, %player%_arrIndex, "%player%-combined-text") -> Call function( Leaderboard.Refresh)

Function( Leaderboard.Refresh) -> Sort array( *descending*, TopLeadeboard, TLBsorted(saved)) -> Get element( TLBsorted, 1, Top#1(saved)) -> Get element( TLBsorted, 2, Top#2(saved)) -> Get element( TLBsorted, 3, Top#3(saved)) -> Create hologram( TOPLB, var(Top#1, Top#2, Top#3)


Python:
# Player Join Event
Player event(Join) -> If variable NOT exists(%player%_arrIndex(saved))
    -> Increment variable(GlobalIndex(saved))
    -> Set variable(%player%_arrIndex(saved) = GlobalIndex)
    -> Insert element(arr(TopLeaderboard(saved)), index = GlobalIndex, Value = "0, %player%")

# Player Kill Event
Player event(Kill) -> Increment variable(%player%-kills)
    -> Combine text("%player%-kills kills by " + "%player%", %player%-combined-text)
    -> Replace element(TopLeaderboard, %player%_arrIndex, "%player%-combined-text")
    -> Call function(Leaderboard.Refresh)

# Leaderboard Refresh Function
Function(Leaderboard.Refresh)
    -> Sort array(*descending*, TopLeaderboard, TLBsorted(saved))
    -> Get element(TLBsorted, 1, Top#1(saved))
    -> Get element(TLBsorted, 2, Top#2(saved))
    -> Get element(TLBsorted, 3, Top#3(saved))
    -> Create hologram(TOPLB, var(Top#1, Top#2, Top#3))


This code isn't fit for a large scaled game due to array size limitations & load. This is my implementation using arrays and can be found working in /ad oshot(hope so). There is another method w/o arrays and involves comparing player kills var to top 1,2,3 if they aren't in top 1,2,3 and set them as top player if there kills are more than them.

Read this far? Consider liking the post <3
 

Dhritiman_Kunti

New member
Joined
May 19, 2024
Messages
3
Howdy, this is a thread regarding top leaderboard. This implemented code is using arrays.





Python:
# Player Join Event
Player event(Join) -> If variable NOT exists(%player%_arrIndex(saved))
    -> Increment variable(GlobalIndex(saved))
    -> Set variable(%player%_arrIndex(saved) = GlobalIndex)
    -> Insert element(arr(TopLeaderboard(saved)), index = GlobalIndex, Value = "0, %player%")

# Player Kill Event
Player event(Kill) -> Increment variable(%player%-kills)
    -> Combine text("%player%-kills kills by " + "%player%", %player%-combined-text)
    -> Replace element(TopLeaderboard, %player%_arrIndex, "%player%-combined-text")
    -> Call function(Leaderboard.Refresh)

# Leaderboard Refresh Function
Function(Leaderboard.Refresh)
    -> Sort array(*descending*, TopLeaderboard, TLBsorted(saved))
    -> Get element(TLBsorted, 1, Top#1(saved))
    -> Get element(TLBsorted, 2, Top#2(saved))
    -> Get element(TLBsorted, 3, Top#3(saved))
    -> Create hologram(TOPLB, var(Top#1, Top#2, Top#3))


This code isn't fit for a large scaled game due to array size limitations & load. This is my implementation using arrays and can be found working in /ad oshot(hope so). There is another method w/o arrays and involves comparing player kills var to top 1,2,3 if they aren't in top 1,2,3 and set them as top player if there kills are more than them.

Read this far? Consider liking the post <3
didn't worked
 

Aalus

Big Bandar
Joined
May 20, 2023
Messages
475
Howdy, this is a thread regarding top leaderboard. This implemented code is using arrays.





Python:
# Player Join Event
Player event(Join) -> If variable NOT exists(%player%_arrIndex(saved))
    -> Increment variable(GlobalIndex(saved))
    -> Set variable(%player%_arrIndex(saved) = GlobalIndex)
    -> Insert element(arr(TopLeaderboard(saved)), index = GlobalIndex, Value = "0, %player%")

# Player Kill Event
Player event(Kill) -> Increment variable(%player%-kills)
    -> Combine text("%player%-kills kills by " + "%player%", %player%-combined-text)
    -> Replace element(TopLeaderboard, %player%_arrIndex, "%player%-combined-text")
    -> Call function(Leaderboard.Refresh)

# Leaderboard Refresh Function
Function(Leaderboard.Refresh)
    -> Sort array(*descending*, TopLeaderboard, TLBsorted(saved))
    -> Get element(TLBsorted, 1, Top#1(saved))
    -> Get element(TLBsorted, 2, Top#2(saved))
    -> Get element(TLBsorted, 3, Top#3(saved))
    -> Create hologram(TOPLB, var(Top#1, Top#2, Top#3))


This code isn't fit for a large scaled game due to array size limitations & load. This is my implementation using arrays and can be found working in /ad oshot(hope so). There is another method w/o arrays and involves comparing player kills var to top 1,2,3 if they aren't in top 1,2,3 and set them as top player if there kills are more than them.

Read this far? Consider liking the post <3
Appreciate the effort! But you made a simple code appear so complicated and confusing by writing it in Python
 
Top