Mirage Source
help - Printable Version

+- Mirage Source (https://mirage-engine.uk/forums)
+-- Forum: Mirage Source (Nostalgia) (https://mirage-engine.uk/forums/forumdisplay.php?fid=61)
+--- Forum: Archive (2006-2011) (https://mirage-engine.uk/forums/forumdisplay.php?fid=18)
+---- Forum: General (https://mirage-engine.uk/forums/forumdisplay.php?fid=17)
+---- Thread: help (/showthread.php?tid=1382)

Pages: 1 2


help - Xeph - 09-11-2007

help whenever i try the paper doll code
when replacing the first one ut comes
up like this

Code:
Sub BltPlayer(ByVal Index As Long)Dim Anim As ByteDim x As Long, y As Long    ' Only used if ever want to switch to blt rather then bltfast    With rec_pos        .top = GetPlayerY(Index) * PIC_Y + Player(Index).YOffset        .Bottom = .top + PIC_Y        .Left = GetPlayerX(Index) * PIC_X + Player(Index).XOffset        .Right = .Left + PIC_X    End With        ' Check for animation    Anim = 0    If Player(Index).Attacking = 0 Then        Select Case GetPlayerDir(Index)              Case DIR_UP                  If (Player(Index).YOffset < PIC_Y / 2) Then Anim = 1              Case DIR_DOWN                  If (Player(Index).YOffset < PIC_Y / 2 * -1) Then Anim = 1              Case DIR_LEFT                  If (Player(Index).XOffset < PIC_Y / 2) Then Anim = 1              Case DIR_RIGHT                  If (Player(Index).XOffset < PIC_Y / 2 * -1) Then Anim = 1        End Select    Else        If Player(Index).AttackTimer + 500 > GetTickCount Then              Anim = 2        End If    End If        ' Check t
o see if we want to stop making him attack    If Player(Index).AttackTimer + 1000 < GetTickCount Then        Player(Index).Attacking = 0        Player(Index).AttackTimer = 0    End If        rec.Left = (GetPlayerDir(Index) * 3 + Anim) * PIC_X    rec.Right = rec.Left + PIC_X        x = GetPlayerX(Index) * PIC_X + Player(Index).XOffset    y = GetPlayerY(Index) * PIC_Y + Player(Index).YOffset - 4        ' Check if its out of bounds because of the offset    If y < 0 Then        y = 0        rec.top = rec.top + (y * -1)    End If        If GetPlayerDir(Index) = DIR_UP Then        If Player(Index).Shield > 0 Then              rec.top = Item(Player(Index).Shield).Pic * PIC_Y              rec.Bottom = rec.top + PIC_Y              Call DD_BackBuffer.BltFast(x, y, DD_ItemSurf, rec, DDBLTFAST_WAIT Or DDBLTFAST_SRCCOLORKEY)        End If        If Player(Index).Weapon > 0 Then              rec.top = Item(Player(Index).Weapon).Pic * PIC_Y              rec.Bottom = rec.top + PIC_Y              Call DD_BackBuffer.BltFast(x
, y, DD_ItemSurf, rec, DDBLTFAST_WAIT Or DDBLTFAST_SRCCOLORKEY)        End If    End If        rec.top = GetPlayerSprite(Index) * PIC_Y    rec.Bottom = rec.top + PIC_Y            'Call DD_BackBuffer.Blt(rec_pos, DD_SpriteSurf, rec, DDBLT_WAIT Or DDBLT_KEYSRC)    Call DD_BackBuffer.BltFast(x, y, DD_SpriteSurf, rec, DDBLTFAST_WAIT Or DDBLTFAST_SRCCOLORKEY)        If Player(Index).Armor > 0 Then        rec.top = Item(Player(Index).Armor).Pic * PIC_Y        rec.Bottom = rec.top + PIC_Y        Call DD_BackBuffer.BltFast(x, y, DD_ItemSurf, rec, DDBLTFAST_WAIT Or DDBLTFAST_SRCCOLORKEY)    End If    If Player(Index).Helmet > 0 Then        rec.top = Item(Player(Index).Helmet).Pic * PIC_Y        rec.Bottom = rec.top + PIC_Y        Call DD_BackBuffer.BltFast(x, y, DD_ItemSurf, rec, DDBLTFAST_WAIT Or DDBLTFAST_SRCCOLORKEY)    End If    If GetPlayerDir(Index)  DIR_UP Then        If Player(Index).Shield > 0 Then              rec.top = Item(Player(Index).Shield).Pic * PIC_Y              rec.Bottom = rec.top + PIC_Y
        Call DD_BackBuffer.BltFast(x, y, DD_ItemSurf, rec, DDBLTFAST_WAIT Or DDBLTFAST_SRCCOLORKEY)        End If        If Player(Index).Weapon > 0 Then              rec.top = Item(Player(Index).Weapon).Pic * PIC_Y              rec.Bottom = rec.top + PIC_Y              Call DD_BackBuffer.BltFast(x, y, DD_ItemSurf, rec, DDBLTFAST_WAIT Or DDBLTFAST_SRCCOLORKEY)        End If    End IfEnd Sub



except shorter... and wider


Re: help - Matt - 09-11-2007

Code tags.

How can it be shorter than that, yet longer than that at the exact same time..?


Re: help - Xeph - 09-11-2007

what is a code tag


Re: help - William - 09-11-2007

I added code tags, but that doesn't help. Where did you copy that code from?

Try to copy the code from the tutorial into notepad first, and then paste it into visual basic.


Re: help - Xeph - 09-11-2007

ill try that thanks heres where i got it

http://www.key2heaven.net/ms/BackupCode/Temporary_Archive/PaperDoll.html

edit: nope


Re: help - Matt - 09-11-2007

Quote:

Those are code tags.


Re: help - Xeph - 09-11-2007

oh i thought you were talking about VB6


Re: help - William - 09-11-2007

Xeph Wrote:ill try that thanks heres where i got it

http://www.key2heaven.net/ms/BackupCode/Temporary_Archive/PaperDoll.html

edit: nope
Yeah, you need to paste it into notepad first, then it will work.


Re: help - Xeph - 09-11-2007

i tried that already it doesent work


Re: help - Matt - 09-11-2007

Code:
Sub BltPlayer(ByVal Index As Long)
Dim Anim As Byte
Dim x As Long, y As Long

    ' Only used if ever want to switch to blt rather then bltfast
    With rec_pos
        .top = GetPlayerY(Index) * PIC_Y + Player(Index).YOffset
        .Bottom = .top + PIC_Y
        .Left = GetPlayerX(Index) * PIC_X + Player(Index).XOffset
        .Right = .Left + PIC_X
    End With

    ' Check for animation
    Anim = 0
    If Player(Index).Attacking = 0 Then
        Select Case GetPlayerDir(Index)
              Case DIR_UP
                  If (Player(Index).YOffset < PIC_Y / 2) Then Anim = 1
              Case DIR_DOWN
                  If (Player(Index).YOffset < PIC_Y / 2 * -1) Then Anim = 1
              Case DIR_LEFT
                  If (Player(Index).XOffset < PIC_Y / 2) Then Anim = 1
              Case DIR_RIGHT
                  If (Player(Index).XOffset < PIC_Y / 2 * -1) Then Anim = 1
        End Select
    Else
        If Player(Index).AttackTimer + 500 > GetTickCount Then
              Anim = 2
        End If
    End If

    ' Check to see if we want to stop making him attack
    If Player(Index).AttackTimer + 1000 < GetTickCount Then
        Player(Index).Attacking = 0
        Player(Index).AttackTimer = 0
    End If

    rec.Left = (GetPlayerDir(Index) * 3 + Anim) * PIC_X
    rec.Right = rec.Left + PIC_X

    x = GetPlayerX(Index) * PIC_X + Player(Index).XOffset
    y = GetPlayerY(Index) * PIC_Y + Player(Index).YOffset - 4

    ' Check if its out of bounds because of the offset
    If y < 0 Then
        y = 0
        rec.top = rec.top + (y * -1)
    End If

    If GetPlayerDir(Index) = DIR_UP Then
        If Player(Index).Shield > 0 Then
              rec.top = Item(Player(Index).Shield).Pic * PIC_Y
              rec.Bottom = rec.top + PIC_Y
              Call DD_BackBuffer.BltFast(x, y, DD_ItemSurf, rec, DDBLTFAST_WAIT Or DDBLTFAST_SRCCOLORKEY)
        End If
        If Player(Index).Weapon > 0 Then
              rec.top = Item(Player(Index).Weapon).Pic * PIC_Y
              rec.Bottom = rec.top + PIC_Y
              Call DD_BackBuffer.BltFast(x, y, DD_ItemSurf, rec, DDBLTFAST_WAIT Or DDBLTFAST_SRCCOLORKEY)
        End If
    End If

    rec.top = GetPlayerSprite(Index) * PIC_Y
    rec.Bottom = rec.top + PIC_Y

    'Call DD_BackBuffer.Blt(rec_pos, DD_SpriteSurf, rec, DDBLT_WAIT Or DDBLT_KEYSRC)
    Call DD_BackBuffer.BltFast(x, y, DD_SpriteSurf, rec, DDBLTFAST_WAIT Or DDBLTFAST_SRCCOLORKEY)

    If Player(Index).Armor > 0 Then
        rec.top = Item(Player(Index).Armor).Pic * PIC_Y
        rec.Bottom = rec.top + PIC_Y
        Call DD_BackBuffer.BltFast(x, y, DD_ItemSurf, rec, DDBLTFAST_WAIT Or DDBLTFAST_SRCCOLORKEY)
    End If

    If Player(Index).Helmet > 0 Then
        rec.top = Item(Player(Index).Helmet).Pic * PIC_Y
        rec.Bottom = rec.top + PIC_Y
        Call DD_BackBuffer.BltFast(x, y, DD_ItemSurf, rec, DDBLTFAST_WAIT Or DDBLTFAST_SRCCOLORKEY)
    End If

    If GetPlayerDir(Index)  DIR_UP Then
        If Player(Index).Shield > 0 Then
            rec.top = Item(Player(Index).Shield).Pic * PIC_Y
            rec.Bottom = rec.top + PIC_Y
            Call DD_BackBuffer.BltFast(x, y, DD_ItemSurf, rec, DDBLTFAST_WAIT Or DDBLTFAST_SRCCOLORKEY)
        End If
        If Player(Index).Weapon > 0 Then
            rec.top = Item(Player(Index).Weapon).Pic * PIC_Y
            rec.Bottom = rec.top + PIC_Y
            Call DD_BackBuffer.BltFast(x, y, DD_ItemSurf, rec, DDBLTFAST_WAIT Or DDBLTFAST_SRCCOLORKEY)
        End If
    End If
End Sub

Is that what you needed done?


Re: help - Xeph - 09-11-2007

well kinda but when i copy paste it into VB6 it turns out like the one
in my first post


Re: help - Matt - 09-11-2007

Explain. I don't exactly get it..


Re: help - William - 09-11-2007

Xeph Wrote:well kinda but when i copy paste it into VB6 it turns out like the one
in my first post
I told you to copy it from the tutorial, PASTE it into notepad, then copy it from notepad and paste it into VB.


Re: help - Matt - 09-11-2007

The one I posted, SHOULD paste into VB properly..

IF not, I have no idea what's wrong with your shit..


Re: help - William - 09-11-2007

Perfekt Wrote:The one I posted, SHOULD paste into VB properly..

IF not, I have no idea what's wrong with your [edit]..
Yeah the one you posted will work great. Just that he didn't listen to me that he needs to paste it into notepad before vb when grabbing code from that site.


Re: help - Matt - 09-11-2007

William Wrote:
Perfekt Wrote:The one I posted, SHOULD paste into VB properly..

IF not, I have no idea what's wrong with your [edit]..
Yeah the one you posted will work great. Just that he didn't listen to me that he needs to paste it into notepad before vb when grabbing code from that site.

I just took what he posted and properly nested it all.. Easy peasy.


Re: help - William - 09-11-2007

Dave Wrote:It's strange tat his computer doesn't follow the line breaks and such.

What OS?
Have you tried grabing code rom that site the tut is on.. Same things happens to me I think.


Re: help - Matt - 09-11-2007

William Wrote:
Dave Wrote:It's strange tat his computer doesn't follow the line breaks and such.

What OS?
Have you tried grabing code rom that site the tut is on.. Same things happens to me I think.

/shrugs

Works fine for me.


Re: help - William - 09-11-2007

Ohh, it worked for me too -_-. Although I think I had the problem before :roll:


Re: help - Matt - 09-11-2007

Before Robin fixed all of that, yeah, that was an issue.


Re: help - William - 09-11-2007

Perfekt Wrote:Before Robin fixed all of that, yeah, that was an issue.
Ah, so thats it. Well I guess Xeph got it working now.


Re: help - Rezeyu - 09-11-2007

My XP computer wouldn't word wrap it either.

My vista wont either from William's backup, but it will from th ones I downloaded from robin when they first were released.


Dunno why.


Re: help - Xeph - 10-11-2007

William Wrote:
Perfekt Wrote:The one I posted, SHOULD paste into VB properly..

IF not, I have no idea what's wrong with your [edit]..
Yeah the one you posted will work great. Just that he didn't listen to me that he needs to paste it into notepad before vb when grabbing code from that site.

thats not true i tried it

William Wrote:
Perfekt Wrote:Before Robin fixed all of that, yeah, that was an issue.
Ah, so thats it. Well I guess Xeph got it working now.

nope not working


Re: help - Xeph - 10-11-2007

i make to many mistakes but ill try a few more times
(mistakes as in capitals)


Re: help - Reece - 11-11-2007

VB6 corrects capitals so you cant type

DiM LeEt AS StRiNg it will just go to Dim leet as String.