This program will hold miscellaneous routines for pokemon, that are small enough to fit and not require taking up a program for all by itself.

It currently performs three functions:

Z=1: Creates the pokedex info screen

Z=2: Sets up the pokemon list when captured or given

Z=3: Sets up the menu for the pokemon party screen

http://sc.cemetech.net/?xpi=cd7d87fa3a39eef903170da24fa81f28
ZMISC
tifreak8x has just edited this program. The source code now reads:
BASIC Code wrote:
:If Z=1:Then
:For(F,1,94,9
:Text(33,F,"□
:End
:Line(0,25,94,25
:"rowSwap(ZPMA→Str0
:0→θ:E:prgmZCE
:Str9→Str4
:1→I:1→J
:Asm(prgmZSP2
:Text(29,8,"NO. ",E
:"rowSwap(ZPNA→Str0
:E:prgmZCE
:Text(2,40,Str9
:If ∟PDX(E)≠2:Then
:Text(16,40,"HT: ??' ??''
:Text(23,40,"WT: ??? LBS
:End
:If ∟PDX(E)=2:Then
:"rowSwap(ZHT→Str0
:E:prgmZCE
:expr(Str9→U
:Text(16,40,"HT: ",iPart(U),"' ",E2fPart(U),"''
:"rowSwap(ZWT→Str0
:E:prgmZCE
:Text(23,40,"WT: "+Str9+" LBS
:"rowSwap(APDXTXT→Str0
:E:prgmZCE
:0→Y:39→X:1→C:3→W
:While W=3
:inString(Str9,"/",C+1)→I
:inString(Str9,"+",C)→J
:If I≠0:Then
:Text(X,Y,sub(Str9,C,I-C
:I+1→C:X+6→X:End
:If I=0:Then
:Text(X,Y,sub(Str9,C,J-C
:J→C:End
:If sub(Str9,C,1)="+
:Then
:Repeat getKey
:End
:ClrDraw:Return
:End:End:End
:End
:
:If Z=2:Then
:"rowSwap(ZPMA→Str0:0→θ:∟P7(43
:prgmZCE:expr(Str9→Str4
:15→I:15→J:"0ZSP2":prgmZRS:prgmTEMP:prgmZC1"0ZBD
:prgmZRS:{94,0,3,21:prgmTEMP:prgmZC1
:1→D:4→θ:"ZTMP→Str0:prgmZCE
:While D<7
:3→θ:prgmZCE
:sub("123456",D,1
:"Unarchive∟P"+Ans+":If ∟P"+Ans+"(43)=0:Then:D"+sub(Str9,1,1)+"X:9"+sub(Str9,1,1)+D:End:Archive∟P"+Ans→Str9
:1:prgmZCE:prgmZTMP:D+1→D:End
:If D=10:Then
:3→θ:prgmZCE:X→D
:sub("123456",D,1
:Unarchive∟P"+Ans+":∟P7"+sub(Str9,1,1)+"∟P"+Ans+"Archive∟P"+Ans→Str9
:"ZTMP→Str0:1→θ
:1:prgmZCE:prgmZTMP
:"rowSwap(ZNA→Str0:∟P7(43
:prgmZCE:"ASH RECEIVED/A "+Str9+"!+*→Str0
:prgmZTD:DelVar DDelVar ∟P7
:End
:If D=7:Then
:1→A:While A=1
:3→θ:prgmZCE
:sub("12345678",∟PSU(16),1
:"1"+sub(Str9,1,1)+"C:Unarchive∟BX"+Ans+":While C<26:If ∟BX"+Ans+(C)>0:Then:C+1"+sub(Str9,1,1)+"C:Else:C"+sub(Str9,1,1)+"X:29"+sub(Str9,1,1)+C:End:End→Str9
:"ZTMP→Str0:1:prgmZCE:prgmZTMP
:If C=29:Then
:"rowSwap(ZBX"+sub("12345678",∟PSU(16),1→Str7:Str7→Str0
:5→θ:prgmZCE:3→θ:prgmZCE
:"∟P7(43"+sub(Str9,1,1),"∟BX"+sub(Str7,5,1)+"(C:"+sub(Str9,2,1)+"θZLIST"+sub(Str9,2,1)+":prgmZRS:"+sub(Str9,2,1)+"∟P7"+sub(Str9,1,1)+"Str0:prgmTEMP:prgmZC1:1"+sub(Str9,1,1)+"θ:X"+sub(Str9,1,1)+"C:Str7"+sub(Str9,1,1)+"Str0:C:prgmZCE:5"+sub(Str9,1,1)+"θ:prgmZCE:0"+sub(Str9,1,1)+"θ:"+sub(Str9,2,1)+"rowSwap(ZPNA"+sub(Str9,1,1)+"Str0:∟P7(43:prgmZCE:Str9"+sub(Str9,2,1)+" HAS/BEEN MOVED TO BOX "+sub(Str7,5,1)+"/ON BILL'S PC!+*"+sub(Str9,1,1)+"Str0:prgmZTD:5"+sub(Str9,1,1)+"θ:Str7"+sub(Str9,1,1)+"Str0:prgmZCE→Str0
:1→θ:"ZTMP→Str0:1:prgmZCE:prgmZTMP:6→θ:"ZTMP→Str0:prgmZCE
:DelVar Str9DelVar Str7DelVar A
:End
:If C=26:∟PSU(16)+(∟PSU(16)<8→∟PSU(16
:If C=26 and ∟PSU(16)=8:9→∟PSU(16
:End:End:End
:
:If 10fPart(Z)=3:Then
:SetUpEditor∟MT
:1→dim(∟MT
:41→G:72→K:94→N:0→O:G→A:67→C:21→D
:sub("123456",iPart(Z),1→Str7
:expr("∟P"+Str7+"(3→I
:expr("∟P"+Str7+"(4→J
:expr("∟P"+Str7+"(5→θ
:expr("∟P"+Str7+"(6→Q
:2{13,14,24,62.5,66,70,73
:If max(I=Ans or J=Ans or θ=Ans or Q=Ans:Then
:If max(26={I,J,θ,Q:Then
:D+6→D:A-6→A:A→G
:Str7+"CUT/→Str7
:dim(∟MT)+1→dim(∟MT
:26→∟MT(dim(∟MT
:End
:If max(28={I,J,θ,Q:Then
:D+6→D:A-6→A:A→G
:Str7+"DIG/→Str7
:dim(∟MT)+1→dim(∟MT
:28→∟MT(dim(∟MT
:End
:If max(48={I,J,θ,Q:Then
:D+6→D:A-6→A:A→G
:Str7+"FLY/→Str7
:dim(∟MT)+1→dim(∟MT
:48→∟MT(dim(∟MT
:End
:If max(125={I,J,θ,Q:Then
:D+6→D:A-6→A:A→G
:C-20→C:K-20→K
:Str7+"SOFTBOILED/→Str7
:dim(∟MT)+1→dim(∟MT
:
:125→∟MT(dim(∟MT
:End
:If max(132={I,J,θ,Q:Then
:D+6→D:A-6→A:A→G
:If K>52:Then:K-12→K:C-12→C:End
:Str7+"STRENGTH/→Str7
:dim(∟MT)+1→dim(∟MT
:132→∟MT(dim(∟MT
:End
:If max(140={I,J,θ,Q:Then
:D+6→D:A-6→A:A→G
:Str7+"SURF/→Str7
:dim(∟MT)+1→dim(∟MT
:140→∟MT(dim(∟MT
:End
:If max(146={I,J,θ,Q:Then
:If S≠60:Then:K-12→K:C-12→C:End
:D+6→D:A-6→A:A→G
:Str7+"TELEPORT/→Str7
:dim(∟MT)+1→dim(∟MT
:146→∟MT(dim(∟MT
:End:End
:Str7+"STATS/MOVE/BACK/+→Str7
:If dim(∟MT)=1:‾{1,2,3→∟MT
:If dim(∟MT)>1:Then
:dim(∟MT)+3→dim(∟MT
:‾1→∟MT(dim(∟MT)-2
:‾2→∟MT(dim(∟MT)-1
:‾3→∟MT(dim(∟MT:End
:sub(Str7,2,length(Str7)-1
:For(F,0,D+4)
:Line(C-4,θ,94,θ,0
:End
:1→F:W→θ:‾1→W
:While W=‾1
:inString(Str7,"/",F→I%
:inString(Str7,"+",1→N
:If I%<N:Then
:(I%-F)+1→I%
:Text(G,K,sub(Str7,F,I%-1
:G+6→G
:F+I%→F
:End
:If F>N
:θ→W:End:End
Generated by SourceCoder, © 2005-2010 Cemetech
This is an automatic post from SourceCoder 2. Report abuse to admin@cemetech.net . You can disable these posts by unchecking the "Post on Update" box in the file's permissions.
Well, for starters in optimization I see this:


Code:
:If ∟PDX(E)≠2:Then
:Text(16,40,"HT: ??' ??''
:Text(23,40,"WT: ??? LBS
:End
:If ∟PDX(E)=2:Then
Better would be this, no?


Code:
:If 2≠∟PDX(E:Then
:Text(16,40,"HT: ??' ??''
:Text(23,40,"WT: ??? LBS
:Else
True enough. I really under use the Else command, not really sure why. *shrugs*

Will have to remember to make that adjustment on the program eventually.
tifreak8x wrote:
True enough. I really under use the Else command, not really sure why. *shrugs*

Will have to remember to make that adjustment on the program eventually.
I think there's probably more places to switch around the statement to save a parenthesis, too. I'll keep looking.
Most likely, I am sure you will find that a lot in my code, as I take the time to post it all up. Don't forget, you need to add appvar support, which should be relatively easy, considering an appvar is a program with a different value in it's VAT entry, right? That way I can get those posted as well. :p
  
 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

 

Advertisement