Fast plan and easy question. How do I sort types.
John
John
Graphics 640,480,16,2 SetBuffer BackBuffer() SeedRnd MilliSecs() Type Player Field name$ Field id End Type ;just some names :) Dim name$(9) name$(0)="Jacob" name$(1)="Emily" name$(2)="Michael" name$(3)="Hannah" name$(4)="Joshua" name$(5)="Madison" name$(6)="Matthew" name$(7)="Samantha" name$(8)="Andrew" name$(9)="Ashley" ;create ten players For l=1 To 10 p.Player=New Player p\name$=name$(l-1) ;add name :) p\id=Int(Rnd(0,100000)) ; just a random number Next unsort=1 Repeat Cls Text 320,10,"Press Space to toggle bestween to sort by name or id",1 If KeyHit(57) unsort=0 sort=1-sort If sort=0 SortPlayersID() ; sort by id Else SortPlayersNAME(); sort by name EndIf EndIf drawPlayer() If unsort=1 Text 240,400,"Players unsorted",1 Else If sort=0 Text 240,400,"Sorted by id",1 Else Text 240,400,"Sorted by names",1 EndIf EndIf Flip Until KeyDown(1) End Function drawPlayer() For p.Player=Each Player Text 50,40+n*(FontHeight()+4),p\name$ Text 250,40+n*(FontHeight()+4),"id :"+p\id n=n+1 Next End Function ;Snippet modified from code acrhives :) Function SortPlayersID() b.Player=First Player flag=True While flag flag=False bb.Player=Last Player While bb<>b bbb.Player=Before bb If bbb=Null Exit If bb\id<bbb\id ;<------------- sort by ids Insert bbb After bb flag=True Else bb=bbb EndIf Wend b=After bb Wend End Function ;Snippet modified from code acrhives :) Function SortPlayersNAME() b.Player=First Player flag=True While flag flag=False bb.Player=Last Player While bb<>b bbb.Player=Before bb If bbb=Null Exit If bb\name$<bbb\name$ ;<------------- sort by name$ Insert bbb After bb flag=True Else bb=bbb EndIf Wend b=After bb Wend End Function