Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - Dragonmaster

Pages: [1]
1
General Discussion / (no subject)
« on: June 28, 2005, 12:21:45 PM »
Ive been here for over a year now, and I've spoken with Colin a few times before.  While I have not agreed with a couple of things done with rpgcode, I havent encountered him to be rude or annoying.  He just states his opinions just as I do mine. In fact I usually enjoy trying to work with him.  I say trying because its hard to grab his attention to help you out. heh

2
General Discussion / (no subject)
« on: June 28, 2005, 11:55:52 AM »
I never asked you not to reply, in fact I expected it. But the statement
Quote
threads don't run during other programs either

, to me at least, implies concurrency.   I never argued with you about the nastiness of modifing global things in threads. But I couldnt think of another way. Maybe i misunderstood you. If thats the case I apologize. Before I started this minigame,  I thought I remebered you, or another developer, mentioning timer functions but I couldn't find the documentation to back up my memory.

3
General Discussion / (no subject)
« on: June 28, 2005, 06:16:43 AM »
I have to disagree.  According to your comment
Quote
For reasons that probably aren't obvious to you, threads don't run during other programs either.

But I define threads as "processes that can run concurrently." concurrently doesnt necessarily mean simultaneously.  Anyways Im not here to argue, Id rather try to sort out a solution to this.  Thanks.

4
General Discussion / (no subject)
« on: June 27, 2005, 02:18:47 PM »
So basically, rpgcode threads are not really threads at all.  I do understand threads, having a bachelors degree in computer science.

5
General Discussion / (no subject)
« on: June 27, 2005, 11:40:33 AM »
I tried to do this
Code: [Select]
////caller program////
choice!=1
hThread! = Thread("countdown.prg",1)
While(i!>0)
{
  highlightPick(choice!)
  Wait(input$)
  SetChoice(input$)
 }
What I want this to do is start the countdown thread.  While the thread is counting down, allow the user to choose which pick to use per section(tumbler)

Code: [Select]
//Thread//
i! = 30
While(i!>0)
{
  clear(cnvRenderNow!)
  ColorRGB(254,36,0)
  FontSize(30)
  Bold("on")
  i$ = CastLit(i!)
  Text(1,1,i$,cnvRenderNow!)
  ColorRGB(0,0,0)
  Bold("off")
  FontSize(20)
 drawCanvas(cnvRenderNow!, 0,0)
 threadSleep(hThread!, 1)
 i--
}
If i run the caller program the Text is not displaying.  Otherwise if I run just the countdown prg it displays the text perfectly.  Not sure why.

6
General Discussion / (no subject)
« on: June 24, 2005, 02:24:48 PM »
I have an idea for a minigame where you as a player has 30-45 seconds to unlock a lock by choosing the correct picks for a lock combination.  The main trouble I encounter with this minigame is the countdown.  I can create a countdown easily
Code: [Select]
for(i!=30;i!>0;i!--)
{
  i = CastLit(i!)
  Text(1,1,i)
  delay(1)
}
I think the best place to implement this countdown, would be in a thread.  If I understand the way RPGCode implements threads, if I created a thread for the countdown display, it would also allow the player to interact with the minigame while the countdown countinues.  I was wondering if anyone could guide me with this endeavor.  Specifically how would the program that creates the thread know when the countdown has reached zero.  Any help is appreciated.

Thanks
Dragonmaster

7
General Discussion / (no subject)
« on: August 02, 2004, 07:55:02 PM »
Just wondering if tkz is down for you all as well.

8
General Discussion / (no subject)
« on: July 27, 2004, 10:04:56 PM »
Im having trouble correctly implementing the funcitonality that I want in my battle system with the savescreen/restorescreen.  Right now Im using cache screen, but I dont watnt to have to use a plugin.  I was hoping someone could give me some pointers on when and where to put them in order to get the effect.

heres the main battle code:
Code: [Select]
#Method battle(benemy[1]$, benemy[2]$, benemy[3]$, benemy[4]$, backgroundpic$, run$)
{
#newplyr("blank.tem")
#send("black.brd",1,1,1)
#bitmap(backgroundpic$)
#NewPlyr ("Damien.tem")
#battleend! = 0
#charactersplayed! = 0
#enemiesplayed! = 5
*cursor settings
  #cursor0! = 120
  #cursor1! = 140
  #cursor2! = 158
  #cursor3! = 175
  #cursor4! = 193
  #cursor5! = 210
  #CacheScreen(0)
  #loadenemies()
  #positionplayers()
  #positionenemies()
  #listchars()
  #CacheScreen(1)
*****Main While******
 #While(battleend! = 0)
 {
   #flipscreen(1)
   #drawbars()
  *#positionenemies()
   #input$ = ""
  #if(playablecharacters! > 0)
  {
    #if(charactersplayed! < playablecharacters!)
    {
      #playerschoice()
    }
    #if(charactersplayed! >= playablecharacters!)
    {
     #Mwin("Enemies turn to fight")
     *#enemyturn()
     #battleend! = 1
    }
  }
  #if(playablecharacters! = 0)
  {
   #battleend! = 1
  }
  #if(numenemies! = 0)
  {
   #battleene! = 1
  }
 }
#kill(battleend!)
#kill(charactersplayed!)
#kill(numenemies!)
#BattleEnd()
}

#Method positionplayers()
{
 #y_to_player! = 1.3
 #For(i! = 0; i! < 4; i! = i! + 1)
 {
   #y_to_player! = y_to_player! + 1.7
   #putplayer(playerhandle[i!]$,3,y_to_player!,8)
   *#if(hp[i!]! = 0)
   *{
   *}
   #if(hp[i!]! ~= 0)
   {
   #stance(43,playerhandle[i!]$)
   }
 }
}
#Method listchars()
{
#ColorRGB(255,255,255)
#x_to_text! = 1
#x_to_pic! = 3
#For(i! = 0; i! < 4; i! = i! + 1)
 {
  * #Mwin(playerhandle[i!]$)
  #if(playerhandle[i!]$ ~= "")
   {
   #GetHP(playerhandle[i!]$, hp[i!]!)
   #getmaxhp(playerhandle[i!]$,maxhp[i!]!)
   #getsmp(playerhandle[i!]$,mp[i!]!)
   #getmaxsmp(playerhandle[i!]$,maxmp[i!]!)
   #code$ = "#playerprofile$ = " + playerhandle[i!]$ +"profile.gif"
   #rpgcode(code$)
   #x_to_text! = x_to_text! + 3
   #SetImage(playerprofile$,x_to_pic!,380,54,54)
   #x_to_pic! = x_to_pic! + 126
   }
 }
}

#Method Drawbars()
{
#barlength! = 70
#barstart! = 70
#aroundbarlength! = 71
#aroundbarstart! = 69
#FontSize(16.3)
#textstart! = 4.7
#For(i! = 0; i! < 4; i! = i! + 1)
 {
  * #Mwin(playerhandle[i!]$)
  #if(playerhandle[i!]$ ~= "")
   {
    *Write Player's name  
       #ColorRGB(255,255,255)
       #Text(textstart!,25.5,playerhandle[i!]$)
    *draw surrounding HP blue rectangle
    *  #ColorRGB(255,255,255)
    *  #aroundbarend! = aroundbarstart! + aroundbarlength!
    *  #DrawRect(aroundbarstart!,399,aroundbarend!,418)
    *draw HP black bar
    *  #ColorRGB(0,0,0)
    *  #blackbarend! = barstart! + barlength!
    *  #FillRect(barstart!,400,blackbarend!,417)
    *draw current HP bar
    *  #ColorRGB(155,9,34)
    *  #actlength! = hp[i!]!/maxhp[i!]! * barlength!
    *  #hpbarend! = barstart! + actlength!
    *  #FillRect(barstart!,400,hpbarend!,417)
    *Write the HP on the bar
      #ColorRGB(255,255,255)
      #Text(textstart!, 27.2,"1000/1000")
    *draw surrounding MP white rectangle
    * #ColorRGB(255,255,255)
    *  #aroundbarend! = aroundbarstart! + aroundbarlength!
    *  #DrawRect(aroundbarstart!,429,aroundbarend!,448)
    *draw MP black bar
    *  #ColorRGB(0,0,0)
    *  #blackbarend! = barstart! + barlength!
    *  #FillRect(barstart!,430,blackbarend!,447)
    *draw current MP bar
    *  #ColorRGB(0,0,240)
    *  #actlength! = mp[i!]!/maxmp[i!]! * barlength!
    *  #mpbarend! = barstart! + actlength!
    *  #FillRect(barstart!,430,mpbarend!,447)
    *Write the MP on the bar
      #ColorRGB(255,255,255)
      #Text(textstart!, 27.9,"<mp[i!]!>/<maxmp[i!]!>")
    *set up variables for next loop
      #textstart! = textstart! + 7.9
      #aroundbarstart! = aroundbarstart! + 140
      #barstart! = barstart! + 140
     #if(hp[i!]! ~= 0)
     {
      #playablecharacters! = i! + 1
     }
   }
}
#kill(barlength!)
#kill(barstart!)
#kill(hpbarend!)
#kill(mpbarend!)
#kill(actlength!)
#kill(aroundbarstart!)
#kill(aroundbarend!)
#kill(aroundbarlength!)
#kill(blackbarstart!)
#kill(blackbarend!)
#kill(textstart!)
}
#Method loadenemies()
{
  #for(k! = 1; k! <= numenemies!; k! = k!+1)
  {
   #code$ = "#enemyprg$ = enemy" + benemy[k!]$ + ".prg"
   #RPGCode(code$)
   #include(enemyprg$)
   #code$="#LoadEnemy_"+ benemy[k!]$
   #rpgcode(code$)
   #Enemy_Name[k!]$=En[Name]$
   #Enemy_MaxHP[k!]!=En[MaxHP]!
   #Enemy_HP[k!]!=En[HP]!
   #Enemy_MaxMP[k!]!=En[MaxMP]!
   #Enemy_MP[k!]!=En[MP]!
   #Enemy_Attack[k!]!=En[Attack]!
   #Enemy_Defense[k!]!=En[Defense]!
   #Enemy_Magic[k!]!=En[Magic]!
   #Enemy_Element]$=En[Element]$
   #Enemy_Exp[k!]!=En[Exp]!
   #Enemy_GP[k!]!=En[GP]!
   #Enemy_Pic[k!]$=En[Pic]$
   #Enemy_Graphic_Flash[k!]$=En[Graphic_Flash]$
   #Enemy_Graphic_Death[k!]$=En[Graphic_Death1]$
   #Enemy_Death_Anim[k!]$=En[Death_Anim]$
   #Enemy_X[k!]!=En_X[k!]!
   #Enemy_Y[k!]!=En_Y[k!]!
   #Enemy_Width[k!]!=En[Width]!
   #Enemy_Height[k!]!=En[Height]!
   #item[k!]$=En_Item$
   #for(i!=1;i!<=10;i!=i!+1){#Enemy_Attack[i!]$=En_Attack[i!]$}
  }
}
#Method positionenemies()
{
  #for(l! = 1; l! <= numenemies!; l! = l!+1)
  {
    #if(enemy_hp[l!]! ~= 0)
    {
    **#MWin("Enemy <l!>'s x is <Enemy_X[l!]!> y is <Enemy_Y[l!]!>")
     #SetImageTransparent(Enemy_Pic[l!]$, Enemy_X[l!]!,Enemy_Y[l!]!, Enemy_Width[l!]!, Enemy_Height[l!]!,255,255,255)
     ***#SetImage(playerprofile$,x_to_pic!,400,50,50)***
    }
    #if(enemy_hp[l!]! ~= 0)
    {
     #numenemies! = numenemies! - 1
    }
  }
}
#Method playerschoice()
{
  #if charactersplayed! < 4)
  {
   #if(hp[charactersplayed!]! = 0)
   {
    #charactersplayed! = charactersplayed! + 1
    #playerschoice()
   }
   #if(hp[charactersplayed!]! ~= 0)
   {
    *#highlightplayer(charactersplayed!)
    #showmenu(charactersplayed!)
    #charactersplayed! = charactersplayed! + 1
    #MWinCls()
   }
  }
}
#Method highlightplayer(playernum!)
{
      #ColorRGB(255,255,0)
      #x1! = playernum! * 150 + 9
      #x2! = playernum! + 1 * 150 + 4
      #DrawRect(x1!,397,x2!,466)
      #kill(playernum!)
}
#Method showmenu(playernum!)
{
     #SetImage("battlemenu.gif",150,90,100,140)
     #ColorRGB(0,0,0)
     #FontSize(18)
     #Bold("on")
     #Text(11, 6, playerhandle[charactersplayed!]$)
     #Text(11, 7.5, "Fight")
     #Text(11, 8.5, "Item")
     #Text(11, 9.5, "Special")
     #Text(11, 10.5, "Magic")
     #Text(11, 11.5, "Defend")
     #Text(11, 12.5, "Run")
     #Bold("off")
     #SaveScreen()
     #battleoption! = 0
     #battlemoveto! =0
     #While(battleoption! = 0)
     {
       #SetCursor()
       #Wait(a$)
       #If(a$=="ENTER")
       {
         #If(battlemoveto!==0)
         {
         *do fight stuff
         #FlipScreen(1)
         #Push("EEE", playerhandle[charactersplayed!]$)
         #for(j! = 17; j! <=19; j!=j!+1)
          {
           #Stance(j!,playerhandle[charactersplayed!]$)
           #delay(1)
          }
         #Stance(20, playerhandle[charactersplayed!]$)
         #delay(.5)
         #battleoption! = 1
         }
         #If(battlemoveto!==1)
         {
         *do defend
         }
         #If(battlemoveto!==2)
         {
         *do ability stuff
         *#action$ = "Ability"
         *#PickCharacter()
         }
         #If(battlemoveto!==3)
         {
         *#Mwin("Pick a character")
         *#action$ = "Stats"
         *#PickCharacter()
         }
         #If(battlemoveto!==5)
         {
         #battleoption! = 1
         }
       }
     #Setmoveto(a$,5, battlemoveto!)
   }
}
#Method SetCursor()
{
 *#RestoreScreen()
 #castlit(battlemoveto!,battlemoveto$)
 #code$ = "#cursory! = cursor" + battlemoveto$ + "!"
 #RPGcode(code$)
 #SetImage("cursor.gif", 155, cursory!, 14, 9)
}
#Method Setmoveto(movement$,limit!, moveresult!)
{
  #If(movement$=="DOWN")
  {
    #If(moveresult!==limit!)
    {
      #moveresult!=-1
    }
    #If(#moveresult! < limit!)
    {
      #moveresult!=moveresult!+1
    }
  }
  #If(movement$=="UP")
  {
    #If(moveresult!==0)
    {
      #moveresult!=limit!+1
    }
    #If(moveresult!>0)
    {
      #moveresult!=moveresult!-1
    }
  }
  #ReturnMethod(moveresult!)
}
#Method BattleEnd()
{
  #if(playablecharacters! = 0)
  {
   #MWin("Game Over")
  }
  #if(playablecharacters! ~= 0)
  {
  #kill(playablecharacters!)
  #ClearScreens()
  #kill(cursor0!)
  #kill(cursor1!)
  #kill(cursor2!)
  #kill(cursor3!)
  #kill(cursor4!)
  #kill(cursor5!)
  #kill(enemy[1]$)
  #kill(enemy[2]$)
  #kill(enemy[3]$)
  #kill(enemy[4]$)
  #kill(benemy[1]$)
  #kill(benemy[2]$)
  #kill(benemy[3]$)
  #kill(benemy[4]$)
  #NewPlyr ("Damien.tem")
  #send(backtobrd$,backtox!,backtoy!,backtolayer!)
  }
}
Many thanks
Dragonmaster

9
General Off-Topic / (no subject)
« on: June 25, 2004, 11:45:54 AM »
Yep I read that Award no longer does defaults anymore, they require that the OEM sets their own default bios pass up. Not sure about AMI.  It's worth a shot

Actually Im 26, born March 4th 1978, just to verify.  I started working at FSU as a computer tech while I was in my senior year of high school.  I guess I am one of the older members.  err oh well.

Thanks for the welcome message Spyder.  Ive been coming to MS(not to be confused with the other MS) for about 2 months now, but never checked out the forums.  I started designing a game about 4 years ago while in college, thinking since I was in the computer science program, I should be able to write a game in C++.  Ha! I didnt know what I was getting into.  I kinda tried off and on until May of 2004 when I found the TK.  I'm glad I found it, as it is much easier.  Anyways I know you didnt ask for my life story, sorry about that.

Dragonmaster

-------------------------------------
Person1:  "So you like to bait your own hooks huh?"
Person2:  "Yep, I like to, I think I am pretty good at it."
Person1:  "So, would you call yourself a master baiter?"

10
General Off-Topic / (no subject)
« on: June 25, 2004, 10:21:46 AM »
Well I know that back when I was a computer technician, BIOS manufactures had a lot of backdoor passwords.  I'm not sure if they still do that though, this was in the mid to late 90s.  Look up your bios manufacturer in google and "default password", IE Pheonix default password, see what you find.

11
General Off-Topic / (no subject)
« on: June 24, 2004, 10:51:12 AM »
I wonder if they were stupid enough to go with the default password.  Which BIOS?

American Megatrends Inc default use to be "ami"

try it.  

If it is a Bios password youll know because it will lock you out after 3 tries.  Then to even enter the bios you have to enter the password.

Pages: [1]