JLI Spieleprogrammierung Foren-Übersicht JLI Spieleprogrammierung

 
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen 
 medals.php?sid=e1a9a865b28b1ff21a9ca5e48e0a42ceMedaillen   RegistrierenRegistrieren   ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

Show me your code and I will tell you who you are. #2
Gehe zu Seite 1, 2  Weiter
 
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Archiv
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
PeaceKiller
JLI Master


Alter: 35
Anmeldedatum: 28.11.2002
Beiträge: 970

Medaillen: Keine

BeitragVerfasst am: 19.01.2006, 20:58    Titel: Show me your code and I will tell you who you are. #2 Antworten mit Zitat

Es gibt eine neue Runde!

Selbe Regeln wie letztes mal, also:
Jeder der selber mitmacht muss zwei Codes unkommentiert lassen.

Mitmachen tun:
bld, Christian Rousselle, Clythoss, Dragon, Fallen, Fast Hawk, Kronos, LordHoto, Oliver


  1. CPP:
    #ifndef _TEXTURE_
    #define _TEXTURE_

    // Includes ///////////////////////////////////////////////////////////////////
    #include <gl/gl.h>

    // Namensbereich //////////////////////////////////////////////////////////////
    namespace video
    {
    // Vorw�tsdeklarationen //////////////////////////////////////////////////////
    class TextureManager;

    // Klassen ////////////////////////////////////////////////////////////////////
    class Texture
    {
    public:
       Texture(unsigned int id, unsigned long w, unsigned long h)
          : id_(id)
          , width_(w)
          , height_(h)
       {
       }

       ~Texture()
       {
       }


       inline unsigned long getWidth() const{return width_;}
       inline unsigned long getHeight() const{return height_;}

       void bind1d() const {glBindTexture(GL_TEXTURE_1D, id_);   }
       void bind2d() const {glBindTexture(GL_TEXTURE_2D, id_);   }

       friend class TextureManager;

    private:
       unsigned long   width_;
       unsigned long   height_;
       unsigned int   id_;
    };
    }

    #endif

    CPP:
    #include <windows.h>
    #include "exception.h"

    Exception::Exception(const TCHAR* text, const TCHAR* source, int line)
    {
       wsprintf(description,
          TEXT("Interner Fehler festgestellt!\n\n")
          TEXT("BESCHREIBUNG:\n%s\n\n")
          TEXT("QUELLCODEDATEI: %s \n")
          TEXT("ZEILE: %d"),
          text, source, line);
    }

    Exception::Exception(const TCHAR* text, const TCHAR* file, const TCHAR* source, int line)
    {
       wsprintf(description,
          TEXT("Interner Fehler festgestellt!\n\n")
          TEXT("BESCHREIBUNG:\n[%s]%s\n\n")
          TEXT("QUELLCODEDATEI: %s \n")
          TEXT("ZEILE: %d"),
          file, text, source, line);
    }

  2. CPP:
    #ifndef CSMANAGER_H_
    #define CSMANAGER_H_
     
    #include "Singleton.h"
     
    enum CSI
    {
       CSI_TEXTCTRLTEXTCHANGE = 0,
    };
     
    class CSManager : public Singleton<CSManager>
    {
       static const unsigned COUNT = 64;
     
       bool registers[COUNT];
     
    public:
     
       CSManager();
     
       void TryEnter(const CSI id)
       {
          while(registers[id]);
          registers[id] = 1;
       }
     
       void Leave(const CSI id)
       {
          registers[id] = 0;
       }
    };
     
     
    #endif

  3. CPP:
    class Button
    {
    public:
       
       Button(void);
       ~Button(void);
     
       bool UpdateButton(dims2 MouseState);
       
       Button operator=(Button& lpButton);
       Button & operator+=(Button& lpButton){return *this;}
       Button & operator-=(Button& lpButton){return *this;}
       Button & operator*=(Button& lpButton){return *this;}
       Button & operator/=(Button& lpButton){return *this;}
       
       basic_string<wchar_t> Value;
       basic_string<wchar_t> TexturKey;
       basic_string<wchar_t> TexturKeyHover;
       basic_string<wchar_t> TexturKeyOnClick;
       basic_string<wchar_t> TexturKeyVisited;
       bool Hover;
       bool OnClick;
       bool Visited;
       rect Position;
       
    };
     
    Button::Button(void)
    {
       Hover = FALSE;
       Visited = FALSE;
       OnClick = FALSE;
    }
     
    Button::~Button(void)
    {
    }
     
    bool Button::UpdateButton(dims2 MouseState)
    {
       if((!(MouseState.rgbButtons[0] == 0x80)) && OnClick == TRUE)
       {
          if(CursorPosition.x > Position.left && CursorPosition.x < Position.right &&
          CursorPosition.y > Position.top && CursorPosition.y < Position.bottom)
          {
             Visited = TRUE;
             OnClick = FALSE;
             return TRUE;
          }
          else
          {
             OnClick = FALSE;   
          }
       }
       if(CursorPosition.x > Position.left && CursorPosition.x < Position.right &&
          CursorPosition.y > Position.top && CursorPosition.y < Position.bottom && OnClick == FALSE)
       {
          Hover = TRUE;
          if((!(MouseState.rgbButtons[0] == 0x80)) && OnClick == TRUE)
          {
             OnClick=TRUE;
          }
           
       }
       else
       {
          Hover = FALSE;
       }
     
    return FALSE;
    }
     
    Button Button::operator =(Button& lpButton)
    {
    Value = lpButton.Value;
    TexturKey = lpButton.TexturKey;
    TexturKeyHover = lpButton.TexturKeyHover;
    TexturKeyOnClick = lpButton.TexturKeyOnClick;
    TexturKeyVisited = lpButton.TexturKeyVisited;
    Hover = lpButton.Hover;
    OnClick = lpButton.OnClick;
    Visited = lpButton.Visited;
    Position = lpButton.Position;
    return *this;
    }

  4. CPP:
    void ThemeClassic::drawCheckbox(const Common::Rect &r, const Common::String &str, bool checked, kState state = kStateEnabled) {
       if (!_initOk)
          return;
       Common::Rect r2 = r;
       int checkBoxSize = getFontHeight();
       if (checkBoxSize > r.height()) {
          checkBoxSize = r.height();
       }
       _screen.fillRect(r, _bgcolor);
       box(r.left, r.top, checkBoxSize, checkBoxSize, _color, _shadowcolor);
       if (checked) {
          // TODO: implement old style
          r2.top += 2;
          r2.bottom = r.top + checkBoxSize - 2;
          r2.left += 2;
          r2.right = r.left + checkBoxSize - 2;
          _screen.fillRect(r2, getColor(state));
          r2 = r;
       }
       r2.left += checkBoxSize + 10;
       r2.top += 3;
       _font->drawString(&_screen, str, r2.left, r2.top, r2.width(), getColor(state), Graphics::kTextAlignCenter, 0, true);
       addDirtyRect(r);
    }

  5. CPP:
    void CSceneNodeMesh::SetMeshID(int ID)
    {
        m_MeshID = ID;

        CXFileMesh* XFileMesh = CGlobals::Get().m_ResourceManager.GetMesh(m_MeshID);

        const D3DXVECTOR3* pMax = XFileMesh->GetBoundingVolume()->GetMax();
        const D3DXVECTOR3* pMin = XFileMesh->GetBoundingVolume()->GetMin();

        NxBoxShapeDesc BoxDesc;
        BoxDesc.dimensions = static_cast<NxVec3>(((*pMax) - (*pMin)) / 2.0f);

        NxBodyDesc BodyDesc;
        BodyDesc.angularDamping = 0.5f;

        NxActorDesc ActorDesc;
        ActorDesc.shapes.pushBack(&BoxDesc);
        ActorDesc.body    = &BodyDesc;
        ActorDesc.density = 1.0f;

        m_pActor = m_pScene->GetPhysScene()->createActor(ActorDesc);
    }

    void CSceneNodeMesh::SetJoint(const char* With)
    {
        CSceneNode* pNode = m_pScene->FindNode(With);

        if(!pNode)
        {
            return;
        }
       
        NxFixedJointDesc FixedJointDesc;
       
        FixedJointDesc.actor[0] = m_pActor;
        FixedJointDesc.actor[1] = pNode->GetActor();
        NxVec3 Pos(0.0f, 5.0f, 0.0f);
        FixedJointDesc.setGlobalAnchor(Pos);   

        NxJoint* pJoint = m_pScene->GetPhysScene()->createJoint(FixedJointDesc);

        pJoint->setBreakable(20.0f, 20.0f);
    }

    void CSceneNodeMesh::SetPosition(float x, float y, float z)
    {
        m_pActor->setGlobalPosition(NxVec3(x, y, z));
    }

    void CSceneNodeMesh::Render()
    {
        m_pActor->getGlobalPose().getColumnMajor44(reinterpret_cast<NxF32*>(&m_matWorld));
        CGlobals::Get().m_pd3dDevice->SetTransform(D3DTS_WORLD, &m_matWorld);
        CGlobals::Get().m_ResourceManager.GetMesh(m_MeshID)->Render(m_bSelected);
    }

    bool CSceneNodeMesh::HitTest(const D3DXVECTOR3* pPickVec, const D3DXMATRIX* pViewMatrix, D3DXVECTOR3* pHitVec)
    {
        D3DXVECTOR3 vPickRayDir;
        D3DXVECTOR3 vPickRayOrig;
       
        // inverse Matrix der zusammengesetzen WorldView Matrix berechnen
        D3DXMATRIXA16 m;
       
        m = m_matWorld * (*pViewMatrix);
       
        D3DXMatrixInverse( &m, NULL, &m );

        // Picking Ray vom ScreenSpace in WorldSpace umsetzen
        vPickRayDir.x  = pPickVec->x * m._11 + pPickVec->y * m._21 + pPickVec->z * m._31;
        vPickRayDir.y  = pPickVec->x * m._12 + pPickVec->y * m._22 + pPickVec->z * m._32;
        vPickRayDir.z  = pPickVec->x * m._13 + pPickVec->y * m._23 + pPickVec->z * m._33;
        vPickRayOrig.x = m._41;
        vPickRayOrig.y = m._42;
        vPickRayOrig.z = m._43;

        CXFileMesh* XFileMesh = CGlobals::Get().m_ResourceManager.GetMesh(m_MeshID);


        return 0 != (D3DXSphereBoundProbe(XFileMesh->GetBoundingVolume()->GetCenter(),
                                 XFileMesh->GetBoundingVolume()->GetRadius(),
                                 &vPickRayOrig, &vPickRayDir));

    }



Die Codes sind komplett zufällig gewählt. Viel Spaß beim raten!
_________________
»If the automobile had followed the same development cycle as the computer, a Rolls-Royce would today cost $100, get a million miles per gallon, and explode once a year, killing everyone inside.«
– Robert X. Cringely, InfoWorld magazine


Zuletzt bearbeitet von PeaceKiller am 19.01.2006, 21:47, insgesamt einmal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Patrick
Dark JLI Master



Anmeldedatum: 25.10.2004
Beiträge: 1895
Wohnort: Düren
Medaillen: Keine

BeitragVerfasst am: 19.01.2006, 21:14    Titel: Antworten mit Zitat

Frage am Rande:
CPP:
while(registers[id]);
Unsinn? Very Happy
_________________
'Wer der Beste sein will muss nach Perfektion streben und jede Gelegenheit nutzen sich zu verbessern.' - KIA
[ German Game Dev | Boardsuche hilft sehr oft | Google rockt | Wie man Fragen richtig stellt | ICQ#: 143040199 ]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Fallen
JLI MVP
JLI MVP


Alter: 40
Anmeldedatum: 08.03.2003
Beiträge: 2860
Wohnort: Münster
Medaillen: 1 (mehr...)

BeitragVerfasst am: 19.01.2006, 21:14    Titel: Antworten mit Zitat

1. Dragon
2. Clythoss
3. Kronos

mehr oder weniger geraten
_________________
"I have a Core2Quad at 3.2GHz, 4GB of RAM at 1066 and an Nvidia 8800 GTS 512 on Vista64 and this game runs like ass whereas everything else I own runs like melted butter over a smokin' hot 18 year old catholic schoolgirl's arse."
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
LordHoto
JLI'ler


Alter: 35
Anmeldedatum: 27.03.2003
Beiträge: 137
Wohnort: Gelnhausen
Medaillen: Keine

BeitragVerfasst am: 19.01.2006, 21:16    Titel: Antworten mit Zitat

Patrick hat Folgendes geschrieben:
Frage am Rande:
CPP:
while(registers[id]);
Unsinn? Very Happy


noe unsichere multithreaded application! Wink
aber sonst sicher bug -> noob code.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
KI
JLI Master


Alter: 39
Anmeldedatum: 04.07.2003
Beiträge: 965
Wohnort: Aachen
Medaillen: Keine

BeitragVerfasst am: 19.01.2006, 22:39    Titel: Antworten mit Zitat

Ich will meine Statistik in diesem Spiel nicht kaputtmachen. Wink

Aber was solls. Mein Tipp:
1. Dragon
5. Christian Rousselle (aka C.)

bei den anderen weiß ich jetzt nicht.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Kronos
Senior JLI'ler



Anmeldedatum: 19.03.2004
Beiträge: 290

Medaillen: Keine

BeitragVerfasst am: 20.01.2006, 07:50    Titel: Antworten mit Zitat

1. Christian
2. Dragon
5. Clythoss

Will ja mal was anderes tippen Wink
_________________
David hat Folgendes geschrieben:
Solang meine Beiträge konstruktiver sind als deiner bin ich zufrieden...

Kein Kommentar notwendig. :rolleyes:
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Christian Rousselle
Site Admin


Alter: 48
Anmeldedatum: 19.07.2002
Beiträge: 1630

Medaillen: Keine

BeitragVerfasst am: 20.01.2006, 08:36    Titel: Antworten mit Zitat

1. bld
3. Kronos
5. KI
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
FH
Super JLI'ler


Alter: 36
Anmeldedatum: 16.10.2004
Beiträge: 438

Medaillen: Keine

BeitragVerfasst am: 20.01.2006, 21:58    Titel: Antworten mit Zitat

Erstmal ne Frage:
Zwischen 1 und 2 ist ein Code ohne Nummer. Zu welchem gehört der denn?
Gruß

FH
_________________
goto work, send your kids to school
follow fashion, act normal
walk on the pavement, watch T.V.
save for your old age, obey the law
Repeat after me: I am free
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
PeaceKiller
JLI Master


Alter: 35
Anmeldedatum: 28.11.2002
Beiträge: 970

Medaillen: Keine

BeitragVerfasst am: 21.01.2006, 00:41    Titel: Antworten mit Zitat

FH hat Folgendes geschrieben:
Erstmal ne Frage:
Zwischen 1 und 2 ist ein Code ohne Nummer. Zu welchem gehört der denn?
Gruß

FH


Zu 1.
_________________
»If the automobile had followed the same development cycle as the computer, a Rolls-Royce would today cost $100, get a million miles per gallon, and explode once a year, killing everyone inside.«
– Robert X. Cringely, InfoWorld magazine
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
fast hawk
Senior JLI'ler



Anmeldedatum: 15.07.2005
Beiträge: 237
Wohnort: Freiburg
Medaillen: Keine

BeitragVerfasst am: 22.01.2006, 18:09    Titel: Antworten mit Zitat

<edit>(1. David)</edit>
2. LordHoto
3. ka vielleicht Fallen
_________________
Jetziges Projekt: The Ring War
Status: 40%
-----------------------------------
Nicht weil es schwer ist, wagen wir es nicht, sondern weil wir es nicht wagen, ist es schwer.
--
Lucius Annaeus Seneca (4)
röm. Philosoph, Dramatiker und Staatsmann


Zuletzt bearbeitet von fast hawk am 23.01.2006, 11:55, insgesamt einmal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
LordHoto
JLI'ler


Alter: 35
Anmeldedatum: 27.03.2003
Beiträge: 137
Wohnort: Gelnhausen
Medaillen: Keine

BeitragVerfasst am: 22.01.2006, 20:40    Titel: Antworten mit Zitat

fast hawk hat Folgendes geschrieben:
1. David
2. LordHoto
3. ka vielleicht Fallen


interresant wie du auf mich beim zweiten kommst, wenn du mal das kommentar von Patrick und mir gelesen haettest...

Zitat:

Definitation.


Definition?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
David
Super JLI'ler


Alter: 39
Anmeldedatum: 13.10.2005
Beiträge: 315

Medaillen: Keine

BeitragVerfasst am: 22.01.2006, 22:11    Titel: Antworten mit Zitat

Hi!

Ich hab garnich mitgemacht! Smile

grüße
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Fallen
JLI MVP
JLI MVP


Alter: 40
Anmeldedatum: 08.03.2003
Beiträge: 2860
Wohnort: Münster
Medaillen: 1 (mehr...)

BeitragVerfasst am: 26.01.2006, 17:25    Titel: Antworten mit Zitat

Auflösung, wir wollen endlich die Auflösung!
_________________
"I have a Core2Quad at 3.2GHz, 4GB of RAM at 1066 and an Nvidia 8800 GTS 512 on Vista64 and this game runs like ass whereas everything else I own runs like melted butter over a smokin' hot 18 year old catholic schoolgirl's arse."
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Clythoss
Junior JLI'ler


Alter: 44
Anmeldedatum: 04.05.2005
Beiträge: 64
Wohnort: Berlin
Medaillen: Keine

BeitragVerfasst am: 27.01.2006, 06:23    Titel: Antworten mit Zitat

Genau
_________________
Derzeitiges Projekt : Wing Fusion
Status: Es geht vorwärts...

-------------------------------------------------------
E=MC²+1W6
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
PeaceKiller
JLI Master


Alter: 35
Anmeldedatum: 28.11.2002
Beiträge: 970

Medaillen: Keine

BeitragVerfasst am: 28.01.2006, 12:23    Titel: Antworten mit Zitat

Ok, dann gibt's jetzt die Auflösung:
  1. Dragon
  2. OLiver
  3. Fast Hawk
  4. LordHoto
  5. Christian Rousselle

_________________
»If the automobile had followed the same development cycle as the computer, a Rolls-Royce would today cost $100, get a million miles per gallon, and explode once a year, killing everyone inside.«
– Robert X. Cringely, InfoWorld magazine
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Archiv Alle Zeiten sind GMT
Gehe zu Seite 1, 2  Weiter
Seite 1 von 2

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2005 phpBB Group
Deutsche Übersetzung von phpBB.de

Impressum