Okay before I add more on to my chat program I wanted to know is there just a way to Clear the input thing off the screen without clearing the messages that have been sent? I don't want to go back and rescript a Whole nother window to send it to the chat window if I aint got to.Any and all help is appreciated thanks :D
Little Question
Blitz3D Forums/Blitz3D Beginners Area/Little Question Of course, I would think you would simply need to store each line of text in a 'type' for instance, displaying when and if you needed to.
Use an array to record the messages or write to a file.
Thanks guys will try both I was thinking of trying something like u both said.
Type MessageList Field Message$ End Type Function AddMessage(Message$) M.MessageList=new MessageList M\Message=Message Count=0 For M.MessageList=each MessageList Count=Count+1 next if Count>20 then M.MessageList=first MessageList delete M endif End Function Function DrawMessage() For M.MessageList=each MessageList Text 0,graphicsheight()-Count*20,M\Message Next End Function In your main loop: Repeat ;do whatever you normally do. ;When a message is received use AddMessage("pass string here") cls color 255,255,255 DrawMessage() flip Until KeyDown(1)
something like that perhaps...
That was quick matty o.o I'll try it thanks.
Ya it don't work it just makes none of it work XD. I'm about to try something myself.
I found a way to fix my problem but now I need to know when I have the input it makes the Line that I inputed move down a space is there a way to get rid of that?
I was thinking of like Reseting the X of the input to 1,1 by using Write instead of print Then everytime so on it'd +the x by 1
Would this kinda work?
After this is fixed thats all I need thanks guys.
I was thinking of like Reseting the X of the input to 1,1 by using Write instead of print Then everytime so on it'd +the x by 1
Would this kinda work?
After this is fixed thats all I need thanks guys.
I believe using the Locate command could help you here.
http://www.blitzbasic.com/b3ddocs/command.php?name=Locate&ref=2d_a-z
http://www.blitzbasic.com/b3ddocs/command.php?name=Locate&ref=2d_a-z
"C" will always be zero in the function you've posted - firstly because it is a local variable inside TextMove() and also because in that code snippet there you've done nothing to cause C to change.
That small code snipped will not do the steps you've just outlined. Post the rest of your code and we may be able to help.
I think you'll find the code I posted earlier does work - when you apply it correctly.
I think you'll find the code I posted earlier does work - when you apply it correctly.
See no I think you read my statement wrong.Thats what it IS doing but not what I want it to do also I will send my code
Here if anyone copies it or wants to use it go on ahead like I give a damn lol
;-more boxing----; Graphics 300,300 AppTitle "Revenge studios Chatroom" ;---boxing----------------------; ;---Boxing out Login stuff---; Name$=Input("Name:") ;---Boxing out stuff---; ;-xx-xx--Boxing out Joining stuff--xx-xx- Ip$="192.168.0.100" GameName$="Revenge Studios" Join=JoinNetGame(GameName$,Ip$) Select Join Case 1 Print ("Joined Revenge Studios Chatroom Succesfully") Player$=CreateNetPlayer(Name$) Cls Case 2 Print ("Failed to join") WaitKey() End End Select ;-xx-xx--Boxing out Joining stuff--xx-xx- While 1 ;--Sending message--------; Color 0,0,0 Message$=Input() SendNetMsg(1,Message$,Name$,0,1) ;--Sending message--------; ;--Reciving---; If RecvNetMsg() Then msgType$=NetMsgType() EndIf If msgType$>0 And msgType$<100 Then msgFrom$=NetMsgFrom() msgData$=NetMsgData$() EndIf Color 255,0,0 Y$ = "1" Text 1,Y$,Name$ + " Says:" + Message$,False,False Y$ = Y$ + 1 ;--Reciving---; Wend
Here if anyone copies it or wants to use it go on ahead like I give a damn lol
I have fixed the entire thing will a couple of test.
Thanks for all help and feedback :).
Thanks for all help and feedback :).