http://calcg.org/newlogo2.png Not Logged in.
Login | Register

General Discussion Board \ Calculator Discussion \ help me with my program!!

Click here to log in (you must be logged in to post comments).

AuthorComment
thunderflea
Marine
Posted: 25 Oct 2009
12:47 GMT
Total Posts: 15
okay so when i start the program the map loads and the star moves up and down like i want it to, but the O that is your character moves all the way to the left and you cant control the O


:[[0,1,0,0,0,0,0,1,0,0,0,0,0,0,1,0]
[0,1,0,0,0,0,0,1,0,0,0,0,0,0,1,0]
[0,1,0,2,2,2,2,3,0,0,0,0,0,0,0,0]
[0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0]
[0,0,0,0,0,0,0,0,3,2,2,2,2,2,3,0]
[0,0,0,0,3,2,2,0,1,0,0,0,0,0,1,0]
[0,1,0,2,3,0,0,0,0,0,0,0,0,0,1,0]
[0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0]]->[J]
ClrHome
For(I,1,8
For(J,1,16
If [A](I,J)=1
Output(I,J,"!
If [A](I,J)=2
Output(I,J,"-
If [A](I,J)=3
Output(I,J,"+

End
End
2->A
1->B
1->C
While 1
Output(A,10,"*
Output(B,10,"
For(Z,0,200
End
A->B
A+C->A
If A=4 or A=1
-C->C
0->K
4->O
8->P
Lbl A
While 1
Output(O,P,"0
getKey->K
If P=8 and O=A:Goto W
If K=24:Goto L
If K=26:Goto R
If K=25:Goto U
If K=34:Goto D
Lbl L
Output(O,P,"
P-1->P
Goto A
Lbl R
Output(O,P,"
P+1->P
Goto A
Lbl U
Output(O,P,"
O-1->O
Goto A
Lbl D
Output(O,P,"
O+1->O
Goto A
End
End
End
End
Lbl W:ClrHome:Output(4,8,"YOU WIN
haveacalc
Guardian
avatar
Posted: 25 Oct 2009
17:19 GMT
Total Posts: 1111
Two big parts of programming are analyzing already-existing code that does what you want to do (possibly making it more efficient along the way) and independently programming the solution. Both are skills, so working at them makes you a stronger programmer in the future.

---
-quoted directly from most movies that don't exist (and some that do).
thunderflea
Marine
Posted: 25 Oct 2009
17:30 GMT
Total Posts: 15
but how do i fix it? do you have a tutorial that could teach me?
haveacalc
Guardian
avatar
Posted: 25 Oct 2009
19:47 GMT
Total Posts: 1111
It looks like you're looking for a good way to do collision detection. Matrices work, but are memory-intensive, so strings are generally used instead. I would look at the code of BASIC RPGs on this site and/or others. As for tutorials, I would look at those listed on TI-Freakware.

---
-quoted directly from most movies that don't exist (and some that do).
me2
Goliath
avatar
Posted: 27 Oct 2009
10:05 GMT
Total Posts: 171
Your program is too complex with too many labels. For simple colision detection, use something like this:

:
Lbl 1
AxesOff
FnOff
0Xmin
94Xmax
0Ymax
-62Ymin
ClrDraw
DelVar P
50Q
Lbl C
DelVar L
P+1P //Increase the level number by one
Text(40,30,"LEVEL:
Text(40,64,Ans
Pause
ClrDraw
Horizontal 0
Vertical 0
Horizontal -62
Vertical 94
For(X,0,Q
Pxl-On(randInt(1,61),randInt(1,93 //Draws 50 random points (obstacles)
End
26R
48B
32A
Repeat pxl-Test(Ans,B) or L=320 //Repeat until you hit something or beat the level\\
Pxl-On(Ans,B
L+1L //Keeps track how many pixels you've moved
getKey
If Ans:AnsR
B-(R=24)+(R=26B
A-(R=25)+(R=34A
End
If L=320:Then //If you moved 320 pixels (won the level)
Q+100Q //Increase the number of obstacles to be drawn by 100
Goto C
End
ClrHome
Disp "YOU DIED","YOUR SCORE:",(P-1)320+L
ClrDraw

You could of course draw specific obstacles rather than random ones.
Matrices are only necessary when programming large RPGs.

---
<--- Going out with a bang.





Portal | My Account | Register | Lost Password or Username | TOS | Disclaimer | Help | Site Search | File Archives Copyright © 2002-2019 CalcG.org