Skocz do zawartości

ediepl

Użytkownicy
  • Postów

    1 626
  • Dołączył

  • Ostatnia wizyta

Odpowiedzi opublikowane przez ediepl

  1. Witam gieemclany, zastanawiałem się ostatnio jak zrobić grę sieciową typu areny 1n1 lub ffa do np 5 graczy i jak najprościej postawić serwer, czy ma to być serwer tworzący pokoje dla graczy, czy serwer jest tworzony u jednego gracza a reszta się z nim łączy etc. I jestem ciekaw czy macie jakieś bardziej sensowne pomysły? :)

    E: I raczej opcja z tworzeniem serwera u gracza odpada z oczywistych powodów

  2. format binary
    use16
    
        org 0x100
        jmp start
        string1 db "string numer jeden$"
         
    
    bok:
             push cx
             mov cx, 1
             mov ah, 0x02;pos
             add dh, 1
             int 0x10
             mov ah, 0x09;write
             int 0x10
             pop cx
             ret
    
    macro print xx,yy,len,str:
             {mov dh, xx
             mov dl, yy
             call pprint1
             mov cx, len
             mov bp, str
             call pprint2}
    
    pprint1:
             mov ah, 0x02
             int 0x10
             ret
    
    pprint2:
             mov ah, 0x09
             mov si, cx
             sub si, 1
    
                     petla:
                     mov al, [bp+si]
                     int 0x10
                     sub si, 1
                     loop petla
             ret
    
    
    start:
         mov al, 0x02;80x25 text
         int 0x10
         
         mov ah, 0x09;write character and attribute at cursor position    ;pasek tytulowy i menu
         mov bl, 0x40;col
         mov al, 0x00;char
         mov cx, 160;ile
         int 0x10
    
         mov ah, 0x02
         mov dh, 0
         mov dl, 0
         int 0x10
    
         print 0,31,18,string1
         
         mov ah, 0x02                         ;bg
         mov dh, 2
         mov dl, 0
         int 0x10
         mov ah, 0x09
         mov bl, 0x70
         mov al, 0x00
         mov cx, 1760
         int 0x10
         
         mov bl, 0x74  ;dolny pasek
         
         mov ah, 2
         mov dh, 24
         int 0x10
         mov ah, 0x09
         mov al, 0xDC
         mov cx, 80
         int 0x10
         
         mov bl, 0x40  ;lewy i prawy pasek
         
         mov ah, 2
         mov dh, 1
         int 0x10
         mov al, 0x00
         mov cx, 23
         lewy:
             call bok
             loop lewy
         mov ah, 2
         mov dh, 1
         mov dl, 79
         int 0x10
         mov cx, 23
         prawy:
             call bok
             loop prawy
             
         mov ah, 2
         mov dh, 0
         mov dl, 0
         int 0x10
    
             
         mov ax, 0x4c00
         int 0x21

  3. Dość uproszczone, ale łatwo rozwinąć ;)

     

    sprite0 - czarny kwardat origin center.

    sprite1 - zielony prostokąt origin x-0 y-środek

    sprite2 - niebieskii prostokąt origin x-0 y-środek

     

    GML
    var rot1, rot2, xx, yy;

     

    draw_sprite(sprite0, 0, x, y);

     

    rot1 = point_direction(x, y, mouse_x, mouse_y);

    rot1 -= max((sprite_get_width(sprite1)+sprite_get_width(sprite2)) - point_distance(x, y, mouse_x, mouse_y), 0)

     

    draw_sprite_ext(sprite1, 0, x, y, 1, 1, rot1, c_white, 1);

     

     

    xx = x + lengthdir_x(sprite_get_width(sprite1), rot1);

    yy = y + lengthdir_y(sprite_get_width(sprite1), rot1);

    rot2 = point_direction(xx, yy, mouse_x, mouse_y);

     

    draw_sprite_ext(sprite2, 0, xx, yy, 1, 1, rot2, c_white, 1);

×
×
  • Dodaj nową pozycję...