Welcome,
Guest
. Please
login
or
register
.
Did you miss your
activation email
?
1 Hour
1 Day
1 Week
1 Month
Forever
Login with username, password and session length
Home
About
Team
Rules
Stats
Status
Sitemap
Chat
Downloads
Forum
News
Our Projects
Major Community Projects
Recent Posts
Unread Posts
Replies
Tools
SourceCoder3
Other Things...
Omnimaga Radio
TI-83 Plus ASM File Unsquisher
Z80 Conversion Tools
IES TI File Editor
Free RAM areas
Comprehensive Getkeyr table
URL Shortener
Online Axe Tilemap Editor
Help
Contact Us
Change Request
Report Issue/Bug
Team
Articles
Members
View the memberlist
Search For Members
Buddies
Login
Register
Omnimaga
»
Forum
»
Calculator Community
»
TI Calculators
»
TI-BASIC
»
[83+ xLIB] Programming Grayscale Help
« previous
next »
Print
Pages: [
1
]
Go Down
Author
Topic: [83+ xLIB] Programming Grayscale Help (Read 3278 times)
0 Members and 1 Guest are viewing this topic.
Halifax
LV9
Veteran (Next: 1337)
Posts: 1334
Rating: +2/-1
[83+ xLIB] Programming Grayscale Help
«
on:
July 15, 2006, 06:30:00 pm »
Here is the code that I was wondering if it could be optimized and it would be much appriciated if this was done before 1 today because after this ima be gone for three weeks.Also another problem is I cant find the right place to put the AI. Cause before the While 1 it only runs when palyer moves. After Repeat it runs so much that getkey doesnt register. At the end it dont move until user moves.
Key:
prgmGROUT3E= Enemy grayscale
prgmGROUT3G=Person grayscale
prgmGAI=Enemy AI(sorta)
->=store
QUOTE
prgmGENGINE:
real(0,1:->S:->T
44->I:-34->M:44->J:-26->P
real(1,I,36,1,8,7,0,0,0,0,1
While 1
prgmGROUT3G:prgmGROUT3E
real(1,I,36,1,8,7,0,0,0,0,1
prgmGROUT3G:prgmGROUT3E
prgmGROUT3G:prgmGROUT3E
Repeat K
getkey->K
prgmGROUT3G:prgmGROUT3E
End
If (K>=24 and K<=26):Then
prgmGROUT3G
real(1,I,36,1,8,8,2,0,3,0,1
End
prgmGAI
prgmGROUT3G
I-8(K=24)+8(K=26->I
If K=25:Then
For(N,1,4
Pt-On(I,M
End
Pt-Off(I,M
-34->M
End
End
prgmGAI:
real(1,J,19,1,8,7,1,0,0,0,1
prgmGROUT3G:prgmGROUT3E
randInt(1,3->O
prgmGROUT3G:prgmGROUT3E
real(1,J,19,1,8,7,11,0,0,0,1
J-8(O=1)+8(O=2)->J
real(1,J,19,1,8,7,1,0,0,0,1
prgmGROUT3G:prgmGROUT3E
If O=3:Then
prgmGROUT3G:prgmGROUT3E
For(N,1,4
Pt-On(J,P
End
prgmGROUT3G:prgmGROUT3E
Pt-Off(J,P
End
Please help o.o
Logged
There are 10 types of people in this world-- those that can read binary, and those that can't.
kalan_vod
LV11
Super Veteran (Next: 3000)
Posts: 2715
Rating: +10/-0
[83+ xLIB] Programming Grayscale Help
«
Reply #1 on:
July 19, 2006, 11:38:00 am »
Well there is a gs guide here made by CDI, other than that I could help a little with your code. Btw, why are you Pt-On four times on the same spot?
c1-->
CODE
ec1For(N,1,4
Pt-On(I,M
Endc2
ec2
Logged
DJ Omnimaga
Clacualters are teh gr33t
CoT Emeritus
LV15
Omnimagician (Next: --)
Posts: 55943
Rating: +3154/-232
CodeWalrus founder & retired Omnimaga founder
[83+ xLIB] Programming Grayscale Help
«
Reply #2 on:
July 19, 2006, 11:57:00 am »
he might have made a typo
Logged
Dragon__lance
Guest
[83+ xLIB] Programming Grayscale Help
«
Reply #3 on:
July 19, 2006, 01:22:00 pm »
as far as your code gos,some simple optimisations are:
In the very beginning,replace the ->S,T with DelvarS,DelvarT.And instead of real(0,1,just have real(0.
Now i noticed you use seperate programs to run the grayscale.My advice is this,if you plan on having a lot of programs in the game,then just copy that program code into the main engine instead of having it as a subroutine.Calling subroutines is slower than just having an if/then statement,especially with a lot of programs involved
As for the AI problem....the only place i see to put it is the Repeat Getkey loop.To make it not run so much,you might have to set up ur own interrupt:
:not(X->X (x being interrupt variable)
:if X:prgmGAI
there are numerous other ways to do this
Logged
Zeromus
Guest
[83+ xLIB] Programming Grayscale Help
«
Reply #4 on:
July 19, 2006, 04:22:00 pm »
@d_l: NEVER skimp code from xLIB, I learned that the hard way, if you include the full code it works fine.
Logged
Dragon__lance
Guest
[83+ xLIB] Programming Grayscale Help
«
Reply #5 on:
July 20, 2006, 02:10:00 pm »
i agree,but i'm very use to just using real(0,instead of real(0,1,has nvr crashed for me yet.
Logged
Liazon
Guest
[83+ xLIB] Programming Grayscale Help
«
Reply #6 on:
July 21, 2006, 12:35:00 am »
That's because real( is a regular Ti-OS command. I don't know what it does, but I think normally it should return the real part of a complex number. I think.
Since xlib won't parse it, Ti-OS will parse it and there will be no crash... hopefully.
Logged
DJ Omnimaga
Clacualters are teh gr33t
CoT Emeritus
LV15
Omnimagician (Next: --)
Posts: 55943
Rating: +3154/-232
CodeWalrus founder & retired Omnimaga founder
[83+ xLIB] Programming Grayscale Help
«
Reply #7 on:
July 21, 2006, 09:22:00 am »
I always use real(0 until I found out that trick to check if xlib is installed or not I never knew there was a sec argument o.o
Logged
threefingeredguy
Guest
[83+ xLIB] Programming Grayscale Help
«
Reply #8 on:
July 21, 2006, 08:16:00 pm »
Yeah, but it doesn't matter. I think adding a second argument will cause an error if xLIB isn't installed anyway.
Logged
DJ Omnimaga
Clacualters are teh gr33t
CoT Emeritus
LV15
Omnimagician (Next: --)
Posts: 55943
Rating: +3154/-232
CodeWalrus founder & retired Omnimaga founder
[83+ xLIB] Programming Grayscale Help
«
Reply #9 on:
July 22, 2006, 01:10:00 am »
yeah i like how you can detect if its installed with one argument at prgm startup
Logged
Print
Pages: [
1
]
Go Up
« previous
next »
Omnimaga
»
Forum
»
Calculator Community
»
TI Calculators
»
TI-BASIC
»
[83+ xLIB] Programming Grayscale Help