diff --git a/src/EffectLib/EffectData.h b/src/EffectLib/EffectData.h index 739f6ff6..404f5071 100644 --- a/src/EffectLib/EffectData.h +++ b/src/EffectLib/EffectData.h @@ -42,8 +42,8 @@ class CEffectData void __ClearLightDataVector(); void __ClearMeshDataVector(); - // FIXME : κ ״ ʴ´. ̵ ãƳ ġ. - // (Ưȭ) ̽ ٲ Ѵٴ ϴ. - [levites] + // FIXME : 이 부분은 그다지 맘에 들지 않는다. 좋은 아이디어를 찾아내어 고치자. + // 상위가 (특화된) 상위의 인터페이스 때문에 모양이 바뀌어야 한다는 것은 옳지 못하다. - [levites] virtual CParticleSystemData * AllocParticle(); virtual CEffectMeshScript * AllocMesh(); virtual CLightData * AllocLight(); diff --git a/src/EffectLib/EffectManager.h b/src/EffectLib/EffectManager.h index 682f1fd7..a395a85f 100644 --- a/src/EffectLib/EffectManager.h +++ b/src/EffectLib/EffectManager.h @@ -62,8 +62,8 @@ class CEffectManager : public CScreen, public CSingleton bool GetEffectData(DWORD dwID, CEffectData ** ppEffect); bool GetEffectData(DWORD dwID, const CEffectData ** c_ppEffect); - // Area Effect Լ... EffectInstance Pointer ȯѴ. - // EffectManager EffectInstanceMap ̿ ʴ´. + // Area에 직접 찍는 Effect용 함수... EffectInstance의 Pointer를 반환한다. + // EffectManager 내부 EffectInstanceMap을 이용하지 않는다. void CreateUnsafeEffectInstance(DWORD dwEffectDataID, CEffectInstance ** ppEffectInstance); bool DestroyUnsafeEffectInstance(CEffectInstance * pEffectInstance); diff --git a/src/EffectLib/EffectMeshInstance.h b/src/EffectLib/EffectMeshInstance.h index eaf17d11..185d4336 100644 --- a/src/EffectLib/EffectMeshInstance.h +++ b/src/EffectLib/EffectMeshInstance.h @@ -9,7 +9,7 @@ class CEffectMeshInstance : public CEffectElementBaseInstance { public: - // NOTE : Mesh ؽ Ÿ νϽ̴. + // NOTE : Mesh 단위 텍스춰 데이타의 인스턴스이다. typedef struct STextureInstance { CFrameController TextureFrameController; diff --git a/src/EffectLib/Type.h b/src/EffectLib/Type.h index ecbd20ea..18c0f2f0 100644 --- a/src/EffectLib/Type.h +++ b/src/EffectLib/Type.h @@ -71,12 +71,12 @@ enum EBillBoardType BILLBOARD_TYPE_ALL, BILLBOARD_TYPE_Y, - BILLBOARD_TYPE_LIE, // ٴڿ + BILLBOARD_TYPE_LIE, // 바닥에 누은 형상 BILLBOARD_TYPE_2FACE, // / and \ BILLBOARD_TYPE_3FACE, // / and \ and - - //BILLBOARD_TYPE_RAY, // ܻ + //BILLBOARD_TYPE_RAY, // 잔상 }; @@ -220,8 +220,8 @@ typedef std::vector TTimeEventTableVector2; typedef std::vector TTimeEventTableVector3; -// NOTE : TimeEventValue Լ Ѱ ƾ ϴ Ƿ -// ƴ ۼ ߽ϴ. - [levites] +// NOTE : TimeEventValue 함수들은 값을 넘겨 받지 말아야 하는 때도 있으므로 +// 값의 직접 리턴이 아닌 포인터 리턴으로 작성 했습니다. - [levites] template __forceinline void GetTimeEventBlendValue(float fElapsedTime, std::vector >& rVector, T * pReturnValue) diff --git a/src/EterBase/CPostIt.h b/src/EterBase/CPostIt.h index d5f00cc3..ca9a2b4b 100644 --- a/src/EterBase/CPostIt.h +++ b/src/EterBase/CPostIt.h @@ -6,14 +6,14 @@ class _CPostItMemoryBlock; /** * @class CPostIt - * @brief ӷó Ŭ̾Ʈ Ŭ̾Ʈ ϱ Ͽ Ǵ Ŭ + * @brief 게임런처에서 게임 클라이언트로 정보를 전달 및 클라이언트에서 수신하기 위하여 사용되는 클래스 */ class CPostIt { public: /** * @brief CPostIt constructor - * @param [in] szAppName : ̸ . + * @param [in] szAppName : 게임의 이름이 들어간다. */ explicit CPostIt( LPCSTR szAppName ); @@ -23,45 +23,45 @@ public: ~CPostIt( void ); /** - * @brief CPostIt class ϰ ִ Ÿ Ŭ忡 Ѵ. + * @brief CPostIt class에서 보유하고 있는 데이타를 클립보드에 저장한다. */ BOOL Flush( void ); /** - * @brief CPostIt class ϰ ִ Ÿ Ŭ忡 ִ . + * @brief CPostIt class에서 보유하고 있는 데이타 및 클립보드에 있는 내용을 지운다. */ void Empty( void ); /** - * @brief Ÿ о´. - * @param [in] lpszKeyName : ҷ Ÿ Ű. "KEY" ִ´. - * @param [in] lpszData : ҷ Ÿ - * @param [in] nSize : lpszData ִ + * @brief 데이타를 읽어온다. + * @param [in] lpszKeyName : 불러올 데이타의 키. "KEY" 식의 내용을 넣는다. + * @param [in] lpszData : 불러올 데이타의 버퍼 + * @param [in] nSize : lpszData 버퍼의 최대사이즈 */ BOOL Get( LPCSTR lpszKeyName, LPSTR lpszData, DWORD nSize ); /** - * @brief Ÿ ִ´. - * @param [in] lpBuffer : Ÿ. "KEY=DATA" ִ´. + * @brief 저장할 데이타를 넣는다. + * @param [in] lpBuffer : 저장할 데이타. "KEY=DATA" 식의 내용을 넣는다. */ BOOL Set( LPCSTR lpszData ); /** - * @brief Ÿ ִ´. - * @param [in] lpszKeyName : Ÿ Ű. "KEY" ִ´. - * @param [in] lpszData : Ÿ. "DATA" ִ´. + * @brief 저장할 데이타를 넣는다. + * @param [in] lpszKeyName : 저장할 데이타의 키. "KEY" 식의 내용을 넣는다. + * @param [in] lpszData : 저장할 데이타. "DATA" 식의 내용을 넣는다. */ BOOL Set( LPCSTR lpszKeyName, LPCSTR lpszData ); /** - * @brief Ÿ(DWORD) ִ´. - * @param [in] lpBuffer : Ÿ. "KEY=DATA" Ÿ ִ´. - * @param [in] dwValue : Ÿ. (DWORD) + * @brief 저장할 데이타(DWORD)를 넣는다. + * @param [in] lpBuffer : 저장할 데이타. "KEY=DATA" 식의 데이타를 넣는다. + * @param [in] dwValue : 저장할 데이타. (DWORD) */ BOOL Set( LPCSTR lpszKeyName, DWORD dwValue ); /** - * @brief CPostIt class Ѵ. (Ŭ constructor ̸ ڰ ֱ , ̸ ؾ) + * @brief CPostIt class를 복사한다. (클래스 constructor에 이름 인자가 있기 때문에, 새 이름을 지정해야함) * @param [in] pPostIt : Destination class * @param [in] lpszKeyName : Destination class's new app-name */ diff --git a/src/EterBase/FileLoader.h b/src/EterBase/FileLoader.h index 90d8b7d5..39915bd3 100644 --- a/src/EterBase/FileLoader.h +++ b/src/EterBase/FileLoader.h @@ -1,6 +1,6 @@ #pragma once -#pragma warning(disable:4786) // character 255 Ѿ° +#pragma warning(disable:4786) // character 255 넘어가는거 끄기 #include #include diff --git a/src/EterBase/StdAfx.h b/src/EterBase/StdAfx.h index ac19b5e8..c13c470b 100644 --- a/src/EterBase/StdAfx.h +++ b/src/EterBase/StdAfx.h @@ -6,7 +6,7 @@ #endif #pragma warning(disable:4710) // not inlined -#pragma warning(disable:4786) // character 255 Ѿ° +#pragma warning(disable:4786) // character 255 넘어가는거 끄기 #pragma warning(disable:4244) // type conversion possible lose of data #include diff --git a/src/EterBase/Utils.h b/src/EterBase/Utils.h index db81e353..fc6b35ff 100644 --- a/src/EterBase/Utils.h +++ b/src/EterBase/Utils.h @@ -64,9 +64,9 @@ extern void GetExceptionPathName(const char * sz_Name, std::string & OnlyFileN extern void GetWorkingFolder(std::string & strFileName); extern void StringLowers(char * pString); extern void StringPath(std::string & rString); -extern void StringPath(char * pString); // ҹڷ , \ / ٲ۴. -extern void StringPath(const char * c_szSrc, char * szDest); // ҹڷ , \ / ٲ۴. -extern void StringPath(const char * c_szSrc, std::string & rString); // ҹڷ , \ / ٲ۴. +extern void StringPath(char * pString); // 모두 소문자로 만들고, \는 /로 바꾼다. +extern void StringPath(const char * c_szSrc, char * szDest); // 모두 소문자로 만들고, \는 /로 바꾼다. +extern void StringPath(const char * c_szSrc, std::string & rString); // 모두 소문자로 만들고, \는 /로 바꾼다. extern void PrintAsciiData(const void* data, int bytes); bool IsFile(const char* filename); bool IsGlobalFileName(const char * c_szFileName); diff --git a/src/EterBase/lzo.h b/src/EterBase/lzo.h index 21810cd3..c2877eab 100644 --- a/src/EterBase/lzo.h +++ b/src/EterBase/lzo.h @@ -12,9 +12,9 @@ class CLZObject typedef struct SHeader { DWORD dwFourCC; - DWORD dwEncryptSize; // ȣȭ ũ - DWORD dwCompressedSize; // ũ - DWORD dwRealSize; // ũ + DWORD dwEncryptSize; // 암호화된 크기 + DWORD dwCompressedSize; // 압축된 데이터 크기 + DWORD dwRealSize; // 실제 데이터 크기 } THeader; #pragma pack() diff --git a/src/EterGrnLib/LODController.h b/src/EterGrnLib/LODController.h index 93d896da..84f64662 100644 --- a/src/EterGrnLib/LODController.h +++ b/src/EterGrnLib/LODController.h @@ -269,7 +269,7 @@ class CGrannyLODController : public CGraphicBase BOOL isModelInstance(); CGrannyModelInstance* GetModelInstance(); - bool HaveBlendThing() { return 0 != GetModelInstance() ? GetModelInstance()->HaveBlendThing() : false; } // NOTE: GetModelInstance() == 0 Ŭ ũ (2012. 05. 07) + bool HaveBlendThing() { return 0 != GetModelInstance() ? GetModelInstance()->HaveBlendThing() : false; } // NOTE: GetModelInstance() == 0일 때 클라 크래쉬나는 문제 수정(2012. 05. 07) protected: void SetCurrentModelInstance(CGrannyModelInstance * pgrnModelInstance); diff --git a/src/EterGrnLib/ModelInstance.h b/src/EterGrnLib/ModelInstance.h index 57f11f50..a06a4a9f 100644 --- a/src/EterGrnLib/ModelInstance.h +++ b/src/EterGrnLib/ModelInstance.h @@ -55,12 +55,12 @@ class CGrannyModelInstance : public CGraphicCollisionObject void DeformNoSkin(const D3DXMATRIX * c_pWorldMatrix); void Deform(const D3DXMATRIX * c_pWorldMatrix); - // FIXME : ϵ Ѱ 2 ؽ Ǿִ ̱⿡ ̷ - // Ҿ Ű簡 , ñ ( ؽ ) + (ȿ ؽ) - // ̷ ڵ ̷ ʳ մϴ. - [levites] - // NOTE : ο if Ű ٴ ŷ ̷ Լ ü и - // Ű ս 鿡 ϴ. - [levites] - // NOTE : ǹ OneTexture. ijʹ 쿡 TwoTexture. + // FIXME : 현재는 하드웨어의 한계로 2장의 텍스춰로 제한이 되어있는 상태이기에 이런 + // 불안정한 아키텍춰가 가능하지만, 궁극적인 방향은 (모델 텍스춰 전부) + (효과용 텍스춰) + // 이런식의 자동 셋팅이 이뤄져야 되지 않나 생각합니다. - [levites] + // NOTE : 내부에 if문을 포함 시키기 보다는 조금은 번거롭지만 이렇게 함수 콜 자체를 분리 + // 시키는 것이 퍼포먼스 적인 측면에서는 더 나은 것 같습니다. - [levites] + // NOTE : 건물은 무조건 OneTexture. 캐릭터는 경우에 따라 TwoTexture. void RenderWithOneTexture(); void RenderWithTwoTexture(); void BlendRenderWithOneTexture(); @@ -160,7 +160,7 @@ class CGrannyModelInstance : public CGraphicCollisionObject // Granny Data granny_model_instance * m_pgrnModelInstance; - //granny_world_pose * m_pgrnWorldPose; // + //granny_world_pose * m_pgrnWorldPose; // 현재 월드 포즈 포인터 granny_control * m_pgrnCtrl; granny_animation * m_pgrnAni; @@ -182,7 +182,7 @@ class CGrannyModelInstance : public CGraphicCollisionObject CGrannyMaterialPalette m_kMtrlPal; // WORK - granny_world_pose* m_pgrnWorldPoseReal; // ޸𸮴 ⿡ Ҵ + granny_world_pose* m_pgrnWorldPoseReal; // 실제 메모리는 여기에 할당 std::vector m_vct_pgrnMeshBinding; // Dynamic Vertex Buffer diff --git a/src/EterGrnLib/StdAfx.h b/src/EterGrnLib/StdAfx.h index e7ff8ae1..a0cb07cc 100644 --- a/src/EterGrnLib/StdAfx.h +++ b/src/EterGrnLib/StdAfx.h @@ -1,6 +1,6 @@ #pragma once -#pragma warning(disable:4786) // character 255 Ѿ° +#pragma warning(disable:4786) // character 255 넘어가는거 끄기 //#include #include diff --git a/src/EterGrnLib/ThingInstance.h b/src/EterGrnLib/ThingInstance.h index 857558af..1b896b97 100644 --- a/src/EterGrnLib/ThingInstance.h +++ b/src/EterGrnLib/ThingInstance.h @@ -34,7 +34,7 @@ class CGraphicThingInstance : public CGraphicObjectInstance void UpdateLODLevel(); void UpdateTime(); - void DeformAll(); // LOD + void DeformAll(); // 모든 LOD 디폼 bool LessRenderOrder(CGraphicThingInstance* pkThingInst); diff --git a/src/EterImageLib/Image.h b/src/EterImageLib/Image.h index a9f5c3e9..45f5a34d 100644 --- a/src/EterImageLib/Image.h +++ b/src/EterImageLib/Image.h @@ -9,11 +9,11 @@ struct TGA_HEADER { char idLen; // 0 - char palType; // ķƮ 1, 0 - char imgType; // ķƮ 1, 2 + char palType; // 파레트있으면 1, 없음 0 + char imgType; // 파레트있으면 1, 없음 2 WORD colorBegin; // 0 - WORD colorCount; // ķƮ 256, 0 - char palEntrySize; // ķƮ 24, 0 + WORD colorCount; // 파레트 있으면 256, 없음 0 + char palEntrySize; // 파레트 있으면 24, 없음 0 WORD left; WORD top; WORD width; diff --git a/src/EterLib/AttributeInstance.h b/src/EterLib/AttributeInstance.h index 22b39140..b347cf3a 100644 --- a/src/EterLib/AttributeInstance.h +++ b/src/EterLib/AttributeInstance.h @@ -15,7 +15,7 @@ class CAttributeInstance const char * GetDataFileName() const; - // NOTE : Object + // NOTE : Object 전용 void SetObjectPointer(CAttributeData * pAttributeData); void RefreshObject(const D3DXMATRIX & c_rmatGlobal); CAttributeData * GetObjectPointer() const; diff --git a/src/EterLib/Camera.h b/src/EterLib/Camera.h index 4ef3cea3..f5578053 100644 --- a/src/EterLib/Camera.h +++ b/src/EterLib/Camera.h @@ -51,8 +51,8 @@ class CCamera void SetResistance(float fResistance); private: - const CCamera & operator = (const CCamera &) ; // - CCamera (const CCamera & ) ; // + const CCamera & operator = (const CCamera &) ; // 지원하지 않음 + CCamera (const CCamera & ) ; //지원하지 않음 // Camera Update eCameraState m_eCameraState; @@ -85,14 +85,14 @@ class CCamera D3DXMATRIX m_matInverseView; D3DXMATRIX m_matBillboard; // Special matrix for billboarding effects - //߰ + //추가분 float m_fPitch; float m_fRoll; float m_fDistance; - // ī޶ AI Ray + // 카메라 AI를 위한 Ray 들 - // ī޶ ѷ Ray + // 카메라를 둘러싼 Ray CRay m_kCameraBottomToTerrainRay; CRay m_kCameraFrontToTerrainRay; CRay m_kCameraBackToTerrainRay; @@ -124,14 +124,14 @@ class CCamera bool m_bDrag; // protected: - // + // 물리 D3DXVECTOR3 m_v3AngularAcceleration; D3DXVECTOR3 m_v3AngularVelocity; float m_fResistance; public: ////////////////////////////////////////////////////////////////////////// - // + // 물리 ////////////////////////////////////////////////////////////////////////// void SetAngularAcceleration(D3DXVECTOR3 v3AngularAcceleration) { m_v3AngularAcceleration = v3AngularAcceleration; } @@ -185,7 +185,7 @@ class CCamera float GetRoll() const { return m_fRoll; } float GetDistance() const { return m_fDistance; } - void Pitch(const float fPitchDelta); //ư ִ´. + void Pitch(const float fPitchDelta); //돌아가는 각도를 넣는다. void Roll(const float fRollDelta); void SetDistance(const float fdistance); @@ -193,35 +193,35 @@ class CCamera // camera movement ////////////////////////////////////////////////////////////////////////// - // ״ ̵... ī޶ ġ Ÿ ġ ޶. + // 말그대로 이동... 카메라 위치와 타겟 위치가 모두 달라진다. void Move(const D3DXVECTOR3 & v3Displacement); - // .. ī޶ ġ ̵.. Ÿ ġ ... + // 줌.. 카메라 위치만 이동.. 타겟 위치는 고정... void Zoom(float fRatio); - // ̵.. Ÿġ ޶Ƿ ܰ ٸ... + // 뷰 방향으로 이동.. 타겟위치가 달라지므로 줌과는 다르다... void MoveAlongView(float fDistance); - // ī޶ ̵.. + // 카메라 옆 방향으로 이동.. void MoveAlongCross(float fDistance); - // ī޶ ̵... + // 카메라 업벡터 방향으로 이동... void MoveAlongUp(float fDistance); - // ī޶ ̵... MoveAlongCross .. + // 카메라 옆 방향으로 이동... MoveAlongCross과 동일.. void MoveLateral(float fDistance); - // Z XY ̵.. + // 뷰 방향의 Z 성분을 무시한 XY평면 방향으로 이동.. void MoveFront(float fDistance); - // Z( ) ̵... + // Z방향(연직 방향)으로 이동... void MoveVertical(float fDistance); - // //ī޶ ġ Ű Ӹ . Ÿ ޶? - // //ȸ ƴ "(Degree)" ִ´. + // //카메라 위치는 고정시키고 머리만 든다. 타겟이 달라지겠죠? + // //회전각을 라디안이 아닌 "도(Degree)"로 넣는다. // void RotateUpper(float fDegree); - // Ÿ ߽ . Eterlib SetAroundCamera ɰ ... - // fPitchDegree (0)κ Ʒ ... - // fRollDegree Ÿ ߽ ð ... + // 타겟 중심으로 돈다. Eterlib의 SetAroundCamera의 기능과 유사... + // fPitchDegree는 수평(0도)로부터 아랫쪽으로 꺽어지는 각도... + // fRollDegree는 타겟 중심으로 시계방향으로 도는 각도... void RotateEyeAroundTarget(float fPitchDegree, float fRollDegree); - // ߽ ߽ . Ÿ ޶? + // 도는 중심점을 따로 지정 그 점을 중심으로 돈다. 타겟 점도 달라지겠죠? void RotateEyeAroundPoint(const D3DXVECTOR3 & v3Point, float fPitchDegree, float fRollDegree); protected: diff --git a/src/EterLib/ColorTransitionHelper.h b/src/EterLib/ColorTransitionHelper.h index deb7a60d..b5319672 100644 --- a/src/EterLib/ColorTransitionHelper.h +++ b/src/EterLib/ColorTransitionHelper.h @@ -27,10 +27,10 @@ class CColorTransitionHelper bool isTransitionStarted() { return m_bTransitionStarted; } private: - D3DCOLOR m_dwCurColor; // + D3DCOLOR m_dwCurColor; // 현재 색 - DWORD m_dwStartTime; // ٲ ϴ ð - DWORD m_dwDuration; // ȿ ٲ°? + DWORD m_dwStartTime; // 바뀌기 시작하는 시간 + DWORD m_dwDuration; // 얼마 동안에 바뀌는가? bool m_bTransitionStarted; diff --git a/src/EterLib/Decal.h b/src/EterLib/Decal.h index a19ba980..f5533b5c 100644 --- a/src/EterLib/Decal.h +++ b/src/EterLib/Decal.h @@ -42,15 +42,15 @@ protected: D3DXPLANE m_v4FrontPlane; D3DXPLANE m_v4BackPlane; - // + // 개수 DWORD m_dwVertexCount; DWORD m_dwPrimitiveCount; - // ý ۿ δ콺 + // 버택스 버퍼와 인댁스 버퍼 // CGraphicVertexBuffer m_GraphicVertexBuffer; // CGraphicIndexBuffer m_GraphicIndexBuffer; - // ý ۿ δ콺 ſ 迭 DrawIndexedPrimitiveUP ׸. + // 버택스 버퍼와 인댁스 버퍼 대신에 배열 만들고 DrawIndexedPrimitiveUP로 그리자. typedef struct { WORD m_wMinIndex; diff --git a/src/EterLib/GrpBase.h b/src/EterLib/GrpBase.h index eeafa076..10bbf9d9 100644 --- a/src/EterLib/GrpBase.h +++ b/src/EterLib/GrpBase.h @@ -230,7 +230,7 @@ class CGraphicBase void UpdatePipeLineMatrix(); protected: - // D3DX Mesh (÷ ǥȰ ) + // 각종 D3DX Mesh 들 (컬루젼 데이터 등을 표시활 때 쓴다) static LPD3DXMESH ms_lpSphereMesh; static LPD3DXMESH ms_lpCylinderMesh; @@ -274,7 +274,7 @@ class CGraphicBase static float ms_fNearY; static float ms_fFarY; - // 2004.11.18.myevan.DynamicVertexBuffer ü + // 2004.11.18.myevan.DynamicVertexBuffer로 교체 /* static std::vector ms_lineIdxVector; static std::vector ms_lineTriIdxVector; @@ -292,7 +292,7 @@ class CGraphicBase static DWORD ms_dwFlashingEndTime; static D3DXCOLOR ms_FlashingColor; - // Terrain picking Ray... CCamera ̿ϴ .. Ray ʿ... + // Terrain picking용 Ray... CCamera 이용하는 버전.. 기존의 Ray와 통합 필요... static CRay ms_Ray; // diff --git a/src/EterLib/GrpCollisionObject.h b/src/EterLib/GrpCollisionObject.h index 94f9018c..b82d995f 100644 --- a/src/EterLib/GrpCollisionObject.h +++ b/src/EterLib/GrpCollisionObject.h @@ -18,8 +18,8 @@ class CGraphicCollisionObject : public CGraphicBase bool IntersectSphere(const D3DXVECTOR3 & c_rv3Position, float fRadius, const D3DXVECTOR3 & c_rv3RayOriginal, const D3DXVECTOR3 & c_rv3RayDirection); bool IntersectCylinder(const D3DXVECTOR3 & c_rv3Position, float fRadius, float fHeight, const D3DXVECTOR3 & c_rv3RayOriginal, const D3DXVECTOR3 & c_rv3RayDirection); - // NOTE : ms_vtPickRayOrig ms_vtPickRayDir CGraphicBGase ִµ - // ڷ ־ ϴ ִ°? Customize ؼ? - [levites] + // NOTE : ms_vtPickRayOrig와 ms_vtPickRayDir를 CGraphicBGase가 가지고 있는데 + // 굳이 인자로 넣어줘야 하는 이유가 있는가? Customize를 위해서? - [levites] bool IntersectSphere(const D3DXVECTOR3 & c_rv3Position, float fRadius); bool IntersectCylinder(const D3DXVECTOR3 & c_rv3Position, float fRadius, float fHeight); }; diff --git a/src/EterLib/GrpDevice.h b/src/EterLib/GrpDevice.h index 70152745..4d7abbf3 100644 --- a/src/EterLib/GrpDevice.h +++ b/src/EterLib/GrpDevice.h @@ -23,8 +23,8 @@ public: CREATE_GET_DEVICE_CAPS2 = (1 << 3), CREATE_DEVICE = (1 << 4), CREATE_REFRESHRATE = (1 << 5), - CREATE_ENUM = (1 << 6), // 2003. 01. 09. myevan Ʈ - CREATE_DETECT = (1 << 7), // 2003. 01. 09. myevan + CREATE_ENUM = (1 << 6), // 2003. 01. 09. myevan 모드 리스트 얻기 실패 + CREATE_DETECT = (1 << 7), // 2003. 01. 09. myevan 모드 선택 실패 CREATE_NO_TNL = (1 << 8), CREATE_BAD_DRIVER = (1 << 9), CREATE_FORMAT = (1 << 10), diff --git a/src/EterLib/GrpLightManager.h b/src/EterLib/GrpLightManager.h index a0567c4f..eb1e8399 100644 --- a/src/EterLib/GrpLightManager.h +++ b/src/EterLib/GrpLightManager.h @@ -93,8 +93,8 @@ class CLightManager : public CGraphicBase, public CLightBase, public CSingleton< void Initialize(); - // NOTE : FlushLight - // ݵ RestoreLight ߸ Ѵ. + // NOTE : FlushLight후 렌더링 + // 그 후 반드시 RestoreLight를 해줘야만 한다. void Update(); void FlushLight(); void RestoreLight(); diff --git a/src/EterLib/LensFlare.h b/src/EterLib/LensFlare.h index 7522cbfc..c53ef2b2 100644 --- a/src/EterLib/LensFlare.h +++ b/src/EterLib/LensFlare.h @@ -81,7 +81,7 @@ public: CLensFlare(); virtual ~CLensFlare(); - void Compute(const D3DXVECTOR3 & c_rv3LightDirection); // D3DTS_VIEW ī޶ Ƿ, ī޶ ڿ ؾ . + void Compute(const D3DXVECTOR3 & c_rv3LightDirection); // D3DTS_VIEW로 부터 카메라 방향을 얻어오므로, 카메라 설정 뒤에 해야 함. void DrawBeforeFlare(); void DrawAfterFlare(); diff --git a/src/EterLib/ResourceManager.h b/src/EterLib/ResourceManager.h index 143cff19..22308a5e 100644 --- a/src/EterLib/ResourceManager.h +++ b/src/EterLib/ResourceManager.h @@ -26,7 +26,7 @@ class CResourceManager : public CSingleton CResource * GetResourcePointer(const char * c_szFileName); CResource * GetTypeResourcePointer(const char * c_szFileName, int iType=-1); - // ߰ + // 추가 bool isResourcePointerData(DWORD dwFileCRC); void RegisterResourceNewFunctionPointer(const char* c_szFileExt, CResource* (*pResNewFunc)(const char* c_szFileName)); @@ -63,7 +63,7 @@ class CResourceManager : public CSingleton TResourceNewFunctionPointerMap m_pResNewFuncMap; TResourceNewFunctionByTypePointerMap m_pResNewFuncByTypeMap; TResourceDeletingMap m_ResourceDeletingMap; - TResourceRequestMap m_RequestMap; // ε û Ʈ + TResourceRequestMap m_RequestMap; // 쓰레드로 로딩 요청한 리스트 TResourceRequestMap m_WaitingMap; TResourceRefDecreaseWaitingMap m_pResRefDecreaseWaitingMap; diff --git a/src/EterLib/SkyBox.h b/src/EterLib/SkyBox.h index 0cb713a1..c0ff5871 100644 --- a/src/EterLib/SkyBox.h +++ b/src/EterLib/SkyBox.h @@ -63,7 +63,7 @@ public: private: TPDTVertex m_Vertex[4]; - TIndex m_Indices[4]; // ε ... + TIndex m_Indices[4]; // 인덱스 버퍼... CColorTransitionHelper m_Helper[4]; }; @@ -99,7 +99,7 @@ protected: protected: ////////////////////////////////////////////////////////////////////////// - // Ÿ + // 타입 정의 typedef std::vector TSkyObjectQuadVector; typedef TSkyObjectQuadVector::iterator TSkyObjectQuadIterator; @@ -118,8 +118,8 @@ protected: ////////////////////////////////////////////////////////////////////////// - // ... - TSkyObjectFace m_FaceCloud; // ϴ ... + // 구름... + TSkyObjectFace m_FaceCloud; // 구름 일단 한장... D3DXMATRIX m_matWorldCloud, m_matTranslationCloud, m_matTextureCloud; D3DXVECTOR3 m_v3PositionCloud; float m_fCloudScaleX, m_fCloudScaleY, m_fCloudHeight; @@ -129,7 +129,7 @@ protected: DWORD m_dwlastTime; - // ī ڽ ̹... + // 스카이 박스 이미지... TGraphicImageInstanceMap m_GraphicImageInstanceMap; // Transform... @@ -137,7 +137,7 @@ protected: D3DXVECTOR3 m_v3Position; float m_fScaleX, m_fScaleY, m_fScaleZ; - // ... ӽ .. + // 랜더링 관련... 임시 변수.. unsigned char m_ucRenderMode; std::string m_strCurTime; diff --git a/src/EterLib/StdAfx.h b/src/EterLib/StdAfx.h index 9eb0782c..99bbf796 100644 --- a/src/EterLib/StdAfx.h +++ b/src/EterLib/StdAfx.h @@ -8,7 +8,7 @@ #define _WIN32_DCOM #pragma warning(disable:4710) // not inlined -#pragma warning(disable:4786) // character 255 Ѿ° +#pragma warning(disable:4786) // character 255 넘어가는거 끄기 #pragma warning(disable:4244) // type conversion possible lose of data #pragma warning(disable:4018) diff --git a/src/EterLib/Thread.h b/src/EterLib/Thread.h index ce096989..6b4225ad 100644 --- a/src/EterLib/Thread.h +++ b/src/EterLib/Thread.h @@ -10,8 +10,8 @@ class CThread protected: static UINT CALLBACK EntryPoint(void * pThis); - virtual UINT Setup() = 0; // Execute ҷ ҷ. - virtual UINT Execute(void * arg) = 0; // 尡 ϴ  + virtual UINT Setup() = 0; // Execute이 불려지기 전에 불려진다. + virtual UINT Execute(void * arg) = 0; // 실제 쓰레드가 하는 일이 들어가는 곳 UINT Run(void * arg); diff --git a/src/EterLib/parser.h b/src/EterLib/parser.h index 2952f6b0..1578a2f9 100644 --- a/src/EterLib/parser.h +++ b/src/EterLib/parser.h @@ -55,30 +55,30 @@ namespace script ~Group(); public: - /** Ʈ ũƮ ׷ . + /** 스트링으로 부터 스크립트 그룹을 만든다. * - * ϸ GetError ޼ҵ Ȯ ִ. + * 실패하면 GetError 메소드로 확인할 수 있다. * - * @param stSource Ʈ ׷ . - * @return true, ϸ false + * @param stSource 이 스트링으로 부터 그룹이 만들어 진다. + * @return 성공시 true, 실패하면 false */ bool Create(const std::string & stSource); - /** ɾ ޴ ޼ҵ + /** 명령어를 받는 메소드 * - * @param cmd ÿ ü ɾ ȴ. - * @return ɾ ִٸ true, ٸ false + * @param cmd 성공시에 이 구조체로 명령어가 복사 된다. + * @return 명령어가 남아 있다면 true, 없다면 false */ bool GetCmd(TCmd & cmd); /* - ɾ ʴ´. + 명령어를 가져오되 꺼내지는 않는다. */ bool ReadCmd(TCmd & cmd); - /** ޴ ޼ҵ + /** 에러를 출력 받는 메소드 * - * @return stError ȴ. + * @return stError 이 곳으로 에러가 출력 된다. */ std::string & GetError(); diff --git a/src/EterPack/EterPack.h b/src/EterPack/EterPack.h index 8ab20589..72597784 100644 --- a/src/EterPack/EterPack.h +++ b/src/EterPack/EterPack.h @@ -134,7 +134,7 @@ class CEterPack bool EncryptIndexFile(); bool DecryptIndexFile(); - DWORD DeleteUnreferencedData(); //  Ǿ Ѵ. + DWORD DeleteUnreferencedData(); // 몇개가 삭제 되었는지 리턴 한다. bool GetNames(std::vector* retNames); @@ -177,7 +177,7 @@ class CEterPack std::unordered_map m_map_indexRefCount; TDataPositionMap m_DataPositionMap; - TFreeIndexList m_FreeIndexList[FREE_INDEX_MAX_SIZE + 1]; // MAX \ ϹǷ + 1 ũ⸸ŭ . + TFreeIndexList m_FreeIndexList[FREE_INDEX_MAX_SIZE + 1]; // MAX 도 억세스 하므로 + 1 크기만큼 만든다. std::string m_stDataFileName; std::string m_stPathName; @@ -193,8 +193,8 @@ class CEterPack //private: // bool m_bIsDataLoaded; - // // ׳ time_t , 32bit time_t ϴ ҽ, - // // CEterPack size size - 4 νϱ ߻ ִ. + // // 그냥 time_t를 쓰면, 32bit time_t를 사용하는 소스에서는, + // // CEterPack의 size를 실제 size - 4로 인식하기 때문에 문제가 발생할 수 있다. // __time64_t m_tLastAccessTime; //public: // __time64_t GetLastAccessTime() { return m_tLastAccessTime; } diff --git a/src/EterPack/EterPackManager.h b/src/EterPack/EterPackManager.h index b202876f..e73eb6e9 100644 --- a/src/EterPack/EterPackManager.h +++ b/src/EterPack/EterPackManager.h @@ -60,12 +60,12 @@ class CEterPackManager : public CSingleton void RetrieveHybridCryptPackKeys( const BYTE* pStream ); void RetrieveHybridCryptPackSDB( const BYTE* pStream ); - // ޸𸮿 ε ѵ , ؾ ͵ . + // 메모리에 매핑된 팩들 가운데, 정리해야할 것들 정리. public: void ArrangeMemoryMappedPack(); protected: - int ConvertFileName(const char * c_szFileName, std::string & rstrFileName); // StringPath std::string + int ConvertFileName(const char * c_szFileName, std::string & rstrFileName); // StringPath std::string 버전 bool CompareName(const char * c_szDirectoryName, DWORD iLength, const char * c_szFileName); CEterPack* FindPack(const char* c_szPathName); diff --git a/src/EterPythonLib/PythonSlotWindow.h b/src/EterPythonLib/PythonSlotWindow.h index 4c7e82e4..ba45ac7e 100644 --- a/src/EterPythonLib/PythonSlotWindow.h +++ b/src/EterPythonLib/PythonSlotWindow.h @@ -24,7 +24,7 @@ namespace UI SLOT_STATE_LOCK = (1 << 0), SLOT_STATE_CANT_USE = (1 << 1), SLOT_STATE_DISABLE = (1 << 2), - SLOT_STATE_ALWAYS_RENDER_COVER = (1 << 3), // Cover ư Կ ϴµ, flag ̾ Ŀ + SLOT_STATE_ALWAYS_RENDER_COVER = (1 << 3), // 현재 Cover 버튼은 슬롯에 무언가 들어와 있을 때에만 렌더링 하는데, 이 flag가 있으면 빈 슬롯이어도 커버 렌더링 }; class CSlotWindow : public CWindow @@ -44,9 +44,9 @@ namespace UI { DWORD dwState; DWORD dwSlotNumber; - DWORD dwCenterSlotNumber; // NOTE :  ū ġ ȣ - DWORD dwItemIndex; // NOTE : ⼭ Ǵ Item̶ ܾ ƴ, - BOOL isItem; // " 빰"̶ . ? - [levites] + DWORD dwCenterSlotNumber; // NOTE : 사이즈가 큰 아이템의 경우 아이템의 실제 위치 번호 + DWORD dwItemIndex; // NOTE : 여기서 사용되는 Item이라는 단어는 좁은 개념의 것이 아닌, + BOOL isItem; // "슬롯의 내용물"이라는 포괄적인 개념어. 더 좋은 것이 있을까? - [levites] // CoolTime float fCoolTime; diff --git a/src/EterPythonLib/PythonWindow.h b/src/EterPythonLib/PythonWindow.h index ef8cb8ad..e1255304 100644 --- a/src/EterPythonLib/PythonWindow.h +++ b/src/EterPythonLib/PythonWindow.h @@ -28,16 +28,16 @@ namespace UI enum EFlags { - FLAG_MOVABLE = (1 << 0), // ִ â - FLAG_LIMIT = (1 << 1), // â ȭ  - FLAG_SNAP = (1 << 2), // ִ â + FLAG_MOVABLE = (1 << 0), // 움직일 수 있는 창 + FLAG_LIMIT = (1 << 1), // 창이 화면을 벗어나지 않음 + FLAG_SNAP = (1 << 2), // 스냅 될 수 있는 창 FLAG_DRAGABLE = (1 << 3), - FLAG_ATTACH = (1 << 4), // θ پ ִ â (For Drag / ex. ScriptWindow) - FLAG_RESTRICT_X = (1 << 5), // ¿ ̵ - FLAG_RESTRICT_Y = (1 << 6), // ̵ + FLAG_ATTACH = (1 << 4), // 완전히 부모에 붙어 있는 창 (For Drag / ex. ScriptWindow) + FLAG_RESTRICT_X = (1 << 5), // 좌우 이동 제한 + FLAG_RESTRICT_Y = (1 << 6), // 상하 이동 제한 FLAG_NOT_CAPTURE = (1 << 7), - FLAG_FLOAT = (1 << 8), // ߿ ־ ġ Ǵ â - FLAG_NOT_PICK = (1 << 9), // 콺 Pick ʴ â + FLAG_FLOAT = (1 << 8), // 공중에 떠있어서 순서 재배치가 되는 창 + FLAG_NOT_PICK = (1 << 9), // 마우스에 의해 Pick되지 않는 창 FLAG_IGNORE_SIZE = (1 << 10), FLAG_RTL = (1 << 11), // Right-to-left }; @@ -91,8 +91,8 @@ namespace UI bool IsIn(long x, long y); bool IsIn(); CWindow * PickWindow(long x, long y); - CWindow * PickTopWindow(long x, long y); // NOTE : Children ʰ - // üũ ϴ Ưȭ Լ + CWindow * PickTopWindow(long x, long y); // NOTE : Children으로 내려가지 않고 상위에서만 + // 체크 하는 특화된 함수 void __RemoveReserveChildren(); @@ -166,10 +166,10 @@ namespace UI EHorizontalAlign m_HorizontalAlign; EVerticalAlign m_VerticalAlign; - long m_x, m_y; // X,Y ǥ - long m_lWidth, m_lHeight; // ũ - RECT m_rect; // Global ǥ - RECT m_limitBiasRect; // limit bias + long m_x, m_y; // X,Y 상대좌표 + long m_lWidth, m_lHeight; // 크기 + RECT m_rect; // Global 좌표 + RECT m_limitBiasRect; // limit bias 값 bool m_bMovable; bool m_bShow; diff --git a/src/GameLib/ActorInstance.h b/src/GameLib/ActorInstance.h index 0011a583..7ff67ad3 100644 --- a/src/GameLib/ActorInstance.h +++ b/src/GameLib/ActorInstance.h @@ -2,8 +2,8 @@ // class CActorInstance -// Note : ij Lighting, Local Point Light, Weapon Trace ȿ ޺ Ÿ, Ÿ, -// Ÿ ߻, ü ϴ Ŵ ̴. +// Note : 캐릭터의 Lighting, Local Point Light, Weapon Trace 등의 효과와 콤보 데이타, 사운드 데이타, +// 모션 데이타 들을 추상적, 총체적으로 관리하는 개별 매니저가 될 것이다. #include "FlyTarget.h" #include "RaceData.h" @@ -64,7 +64,7 @@ class CActorInstance : public IActorInstance, public IFlyTargetableObject virtual void OnChangeShape() = 0; }; - // 2004.07.05.myevan.ýź ʿ ̴ ذ + // 2004.07.05.myevan.궁신탄영 맵에 끼이는 문제해결 private: static IBackground& GetBackground(); @@ -217,7 +217,7 @@ class CActorInstance : public IActorInstance, public IFlyTargetableObject CActorInstance(); virtual ~CActorInstance(); - // 20041201.myevan.νϽ̽ Լ + // 20041201.myevan.인스턴스베이스용 함수 void INSTANCEBASE_Transform(); void INSTANCEBASE_Deform(); @@ -294,13 +294,13 @@ class CActorInstance : public IActorInstance, public IFlyTargetableObject ///////////////////////////////////////////////////////////////////////////////////// // Motion Queueing System - void SetMotionMode(int iMotionMode); // FIXME : ð ϰԲ Ѵ. + void SetMotionMode(int iMotionMode); // FIXME : 모드의 시간차 적용이 가능하게끔 한다. int GetMotionMode(); void SetLoopMotion(DWORD dwMotion, float fBlendTime = 0.1f, float fSpeedRatio=1.0f); bool InterceptOnceMotion(DWORD dwMotion, float fBlendTime = 0.1f, UINT uSkill=0, float fSpeedRatio=1.0f); bool InterceptLoopMotion(DWORD dwMotion, float fBlendTime = 0.1f); - bool PushOnceMotion(DWORD dwMotion, float fBlendTime = 0.1f, float fSpeedRatio=1.0f); // FIXME : ð ϰԲ Ѵ. - bool PushLoopMotion(DWORD dwMotion, float fBlendTime = 0.1f, float fSpeedRatio=1.0f); // FIXME : ð ϰԲ Ѵ. + bool PushOnceMotion(DWORD dwMotion, float fBlendTime = 0.1f, float fSpeedRatio=1.0f); // FIXME : 모드의 시간차 적용이 가능하게끔 한다. + bool PushLoopMotion(DWORD dwMotion, float fBlendTime = 0.1f, float fSpeedRatio=1.0f); // FIXME : 모드의 시간차 적용이 가능하게끔 한다. void SetMotionLoopCount(int iCount); bool IsPushing(); @@ -346,9 +346,9 @@ class CActorInstance : public IActorInstance, public IFlyTargetableObject ///////////////////////////////////////////////////////////////////////////////////// // Battle // Input - // ű ɼ ִ ڵ - // Ʈ ÷̾ ϰ ܼ Showing Type̱ - // ˻簡 ʿ . + // 하위로 옮길 가능성이 있는 코드들 + // 네트웍 연동시 전투 관련은 플레이어를 제외하곤 단순히 Showing Type이기 때문에 + // 조건 검사가 필요 없다. void InputNormalAttackCommand(float fDirRot); // Process input - Only used by player's character bool InputComboAttackCommand(float fDirRot); // Process input - Only used by player's character @@ -524,7 +524,7 @@ class CActorInstance : public IActorInstance, public IFlyTargetableObject void ClearFlyEventHandler(); void SetFlyEventHandler(IFlyEventHandler * pHandler); - // 2004. 07. 07. [levites] - ų Ÿ ٲ ذ ڵ + // 2004. 07. 07. [levites] - 스킬 사용중 타겟이 바뀌는 문제 해결을 위한 코드 bool CanChangeTarget(); protected: @@ -567,7 +567,7 @@ class CActorInstance : public IActorInstance, public IFlyTargetableObject void CurrentMotionProcess(); MOTION_KEY GetRandomMotionKey(MOTION_KEY dwMotionKey); - float GetLastMotionTime(float fBlendTime); // NOTE : ڵ BlendTimeŭ մ ð + float GetLastMotionTime(float fBlendTime); // NOTE : 자동으로 BlendTime만큼을 앞당긴 시간을 리턴 float GetMotionDuration(DWORD dwMotionKey); bool InterceptMotion(EMotionPushType iMotionType, WORD wMotion, float fBlendTime = 0.1f, UINT uSkill=0, float fSpeedRatio=1.0f); @@ -637,31 +637,31 @@ class CActorInstance : public IActorInstance, public IFlyTargetableObject protected: float __GetAttackSpeed(); - DWORD __SetMotion(const SSetMotionData& c_rkSetMotData, DWORD dwRandMotKey=0); // + DWORD __SetMotion(const SSetMotionData& c_rkSetMotData, DWORD dwRandMotKey=0); // 모션 데이터 설정 void __ClearMotion(); - bool __BindMotionData(DWORD dwMotionKey); // ͸ ε - void __ClearHittedActorInstanceMap(); // νϽ + bool __BindMotionData(DWORD dwMotionKey); // 모션 데이터를 바인딩 + void __ClearHittedActorInstanceMap(); // 때려진 액터 인스턴스 맵을 지운다 - UINT __GetMotionType(); // Ÿ + UINT __GetMotionType(); // 모션 타입 얻기 - bool __IsNeedFlyTargetMotion(); // FlyTarget ʿ ΰ? - bool __HasMotionFlyEvent(); // 𰡸 °? - bool __IsWaitMotion(); // ΰ? - bool __IsMoveMotion(); // ̵ ΰ? - bool __IsAttackMotion(); // ΰ? - bool __IsComboAttackMotion(); // ޺ ΰ? - bool __IsDamageMotion(); // ΰ? - bool __IsKnockDownMotion(); // ˴ٿ ΰ? - bool __IsDieMotion(); // ΰ? - bool __IsStandUpMotion(); // Ͼ ΰ? + bool __IsNeedFlyTargetMotion(); // FlyTarget 이 필요한 모션인가? + bool __HasMotionFlyEvent(); // 무언가를 쏘는가? + bool __IsWaitMotion(); // 대기 모션 인가? + bool __IsMoveMotion(); // 이동 모션 인가? + bool __IsAttackMotion(); // 공격 모션 인가? + bool __IsComboAttackMotion(); // 콤보 공격 모션 인가? + bool __IsDamageMotion(); // 데미지 모션인가? + bool __IsKnockDownMotion(); // 넉다운 모션인가? + bool __IsDieMotion(); // 사망 모션 인가? + bool __IsStandUpMotion(); // 일어서기 모션인가? bool __IsMountingHorse(); - bool __CanAttack(); // Ҽ ִ°? - bool __CanNextComboAttack(); // ޺ Ѱ? + bool __CanAttack(); // 공격 할수 있는가? + bool __CanNextComboAttack(); // 다음 콤보 어택이 가능한가? - bool __IsComboAttacking(); // ޺ ΰ? - void __CancelComboAttack(); // ޺ + bool __IsComboAttacking(); // 콤보 공격중인가? + void __CancelComboAttack(); // 콤보 공격 취소 WORD __GetCurrentMotionIndex(); DWORD __GetCurrentMotionKey(); @@ -683,9 +683,9 @@ class CActorInstance : public IActorInstance, public IFlyTargetableObject D3DXVECTOR3 __GetFlyTargetPosition(); protected: - void __DestroyWeaponTrace(); // ܻ Ѵ - void __ShowWeaponTrace(); // ܻ δ - void __HideWeaponTrace(); // ܻ + void __DestroyWeaponTrace(); // 무기 잔상을 제거한다 + void __ShowWeaponTrace(); // 무기 잔상을 보인다 + void __HideWeaponTrace(); // 무기 잔상을 감춘다 protected: // collision data @@ -705,7 +705,7 @@ class CActorInstance : public IActorInstance, public IFlyTargetableObject // For Collision Detection TCollisionPointInstanceList m_BodyPointInstanceList; TCollisionPointInstanceList m_DefendingPointInstanceList; - SSplashArea m_kSplashArea; // TODO : ؾѴ - [levites] + SSplashArea m_kSplashArea; // TODO : 복수에 대한 고려를 해야한다 - [levites] CAttributeInstance * m_pAttributeInstance; ///////////////////////////////////////////////////////////////////////////////////// @@ -736,7 +736,7 @@ class CActorInstance : public IActorInstance, public IFlyTargetableObject float m_fInvisibleTime; BOOL m_isHiding; - // TODO : State ų ִ + // TODO : State로 통합 시킬 수 있는지 고려해 볼것 BOOL m_isResistFallen; BOOL m_isSleep; BOOL m_isFaint; @@ -822,7 +822,7 @@ class CActorInstance : public IActorInstance, public IFlyTargetableObject void __InitializeRotationData(); void __InitializePositionData(); - public: // InstanceBase ӽ÷ public + public: // InstanceBase 통합전 임시로 public IEventHandler* __GetEventHandlerPtr(); IEventHandler& __GetEventHandlerRef(); diff --git a/src/GameLib/Area.h b/src/GameLib/Area.h index 1fae3c70..98d2febc 100644 --- a/src/GameLib/Area.h +++ b/src/GameLib/Area.h @@ -157,7 +157,7 @@ class CArea typedef std::vector TDungeonBlockInstanceVector; typedef std::vector TObjectInstanceVector; typedef std::vector TAmbienceInstanceVector; - typedef std::map TGraphicThingInstanceCRCMap; // ȭ by + typedef std::map TGraphicThingInstanceCRCMap; // 최적화용 by 동현 typedef std::set TShowingPortalIDSet; typedef struct SCRCWithNumber @@ -264,7 +264,7 @@ class CArea protected: // Static Data - TObjectDataVector m_ObjectDataVector; // Area ִ Ʈ + TObjectDataVector m_ObjectDataVector; // Area 상에 있는 오브젝트들 // Rendering Instances TObjectInstanceVector m_ObjectInstanceVector; @@ -280,7 +280,7 @@ class CArea TCRCWithNumberVector m_kRenderedThingInstanceCRCWithNumberVector; TThingInstanceVector m_kRenderedGrapphicThingInstanceVector; - // ǥ : ɸ ü ߿ ǥ... Ѵ 0~999 + // 좌표 : 심리스 맵 전체 중에서의 좌표... 둘다 0~999 WORD m_wX; WORD m_wY; diff --git a/src/GameLib/FlyingInstance.h b/src/GameLib/FlyingInstance.h index 33db1658..5541fdfb 100644 --- a/src/GameLib/FlyingInstance.h +++ b/src/GameLib/FlyingInstance.h @@ -11,8 +11,8 @@ class CActorInstance; class CFlyingInstance { public: - // 2004. 3. 26. myevan. ̹ ʿ. ӿ ʴ´ٸ ӹ޾ 鵵 - void Clear(); // Destroy + // 2004. 3. 26. myevan. 적절한 네이밍이 필요. 게임에서 사용하지 않는다면 툴에서 툴 전용으로 상속받아 만들도록 하자 + void Clear(); // Destroy와 같다 void SetDataPointer(CFlyingData * pData, const D3DXVECTOR3 & v3StartPosition); void SetFlyTarget(const CFlyTarget & cr_Target); // Shot at Target @@ -56,7 +56,7 @@ public: void SetOwner(IActorInstance * pOwner) { m_pOwner = pOwner; } void SetSkillIndex(DWORD dwIndex) { m_dwSkillIndex = dwIndex; } - // FIXME : ϰ ֽϴ. ӽ÷ .. - [levites] + // FIXME : 툴에서 사용하고 있습니다. 임시로 위로.. - [levites] void __Explode(bool bBomb=true); void __Bomb(); @@ -67,7 +67,7 @@ protected: void __SetDataPointer(CFlyingData * pData, const D3DXVECTOR3 & v3StartPosition); void __SetTargetDirection(const CFlyTarget& c_rkTarget); - void __SetTargetNormalizedDirection(const D3DXVECTOR3 & v3NormalizedDirection ); // Ÿ + void __SetTargetNormalizedDirection(const D3DXVECTOR3 & v3NormalizedDirection ); // 시작 타겟 방향 설정 protected: diff --git a/src/GameLib/GameEventManager.h b/src/GameLib/GameEventManager.h index 8fe95a7f..801fd06e 100644 --- a/src/GameLib/GameEventManager.h +++ b/src/GameLib/GameEventManager.h @@ -6,10 +6,10 @@ // // CGameEventManager // -// Note : Game󿡼 Ͼ , ȭ 鸲, Range Ӱ Ÿ Event -// ϴ Ŭ. - [levites] +// Note : Game상에서 일어나는 폭발, 화면 흔들림, Range 무기들의 움직임과 타격 등의 Event +// 를 종합적으로 관리하는 클래스. - [levites] // -// Note : ӻ Cinematic Event Ʈϴ Ŵ Ѵ. 2004.07.19 - [levites] +// Note : 게임상의 Cinematic Event 를 컨트롤하는 매니져로 사용한다. 2004.07.19 - [levites] // class CGameEventManager : public CSingleton, public CScreen diff --git a/src/GameLib/Interface.h b/src/GameLib/Interface.h index 78cf53cf..5e252553 100644 --- a/src/GameLib/Interface.h +++ b/src/GameLib/Interface.h @@ -1,6 +1,6 @@ #pragma once -// 2004.07.05.myevan.ýź ʿ ̴ ذ +// 2004.07.05.myevan.궁신탄영 맵에 끼이는 문제해결 class IBackground : public CSingleton { public: diff --git a/src/GameLib/ItemData.h b/src/GameLib/ItemData.h index a8b7b286..c05d7ec6 100644 --- a/src/GameLib/ItemData.h +++ b/src/GameLib/ItemData.h @@ -1,6 +1,6 @@ #pragma once -// NOTE : Item Ŭ. +// NOTE : Item의 통합 관리 클래스다. // Icon, Model (droped on ground), Game Data #include "../eterLib/GrpSubImage.h" @@ -22,18 +22,18 @@ class CItemData enum EItemType { ITEM_TYPE_NONE, //0 - ITEM_TYPE_WEAPON, //1// - ITEM_TYPE_ARMOR, //2// - ITEM_TYPE_USE, //3// + ITEM_TYPE_WEAPON, //1//무기 + ITEM_TYPE_ARMOR, //2//갑옷 + ITEM_TYPE_USE, //3//아이템 사용 ITEM_TYPE_AUTOUSE, //4 ITEM_TYPE_MATERIAL, //5 - ITEM_TYPE_SPECIAL, //6 // + ITEM_TYPE_SPECIAL, //6 //스페셜 아이템 ITEM_TYPE_TOOL, //7 - ITEM_TYPE_LOTTERY, //8// - ITEM_TYPE_ELK, //9// + ITEM_TYPE_LOTTERY, //8//복권 + ITEM_TYPE_ELK, //9//돈 ITEM_TYPE_METIN, //10 ITEM_TYPE_CONTAINER, //11 - ITEM_TYPE_FISH, //12// + ITEM_TYPE_FISH, //12//낚시 ITEM_TYPE_ROD, //13 ITEM_TYPE_RESOURCE, //14 ITEM_TYPE_CAMPFIRE, //15 @@ -41,21 +41,21 @@ class CItemData ITEM_TYPE_SKILLBOOK, //17 ITEM_TYPE_QUEST, //18 ITEM_TYPE_POLYMORPH, //19 - ITEM_TYPE_TREASURE_BOX, //20// - ITEM_TYPE_TREASURE_KEY, //21// + ITEM_TYPE_TREASURE_BOX, //20//보물상자 + ITEM_TYPE_TREASURE_KEY, //21//보물상자 열쇠 ITEM_TYPE_SKILLFORGET, //22 ITEM_TYPE_GIFTBOX, //23 ITEM_TYPE_PICK, //24 - ITEM_TYPE_HAIR, //25//Ӹ - ITEM_TYPE_TOTEM, //26// - ITEM_TYPE_BLEND, //27//ɶ ϰ Ӽ ٴ ๰ - ITEM_TYPE_COSTUME, //28//ڽ (2011 8 ߰ ڽ ýۿ ) - ITEM_TYPE_DS, //29 //ȥ - ITEM_TYPE_SPECIAL_DS, //30 // Ư ȥ (DS_SLOT ϴ UNIQUE ̶ ϸ ) - ITEM_TYPE_EXTRACT, //31 ⵵. - ITEM_TYPE_SECONDARY_COIN, //32 . - ITEM_TYPE_RING, //33 (ũ ƴ ) - ITEM_TYPE_BELT, //34 Ʈ + ITEM_TYPE_HAIR, //25//머리 + ITEM_TYPE_TOTEM, //26//토템 + ITEM_TYPE_BLEND, //27//생성될때 랜덤하게 속성이 붙는 약물 + ITEM_TYPE_COSTUME, //28//코스츔 아이템 (2011년 8월 추가된 코스츔 시스템용 아이템) + ITEM_TYPE_DS, //29 //용혼석 + ITEM_TYPE_SPECIAL_DS, //30 // 특수한 용혼석 (DS_SLOT에 착용하는 UNIQUE 아이템이라 생각하면 됨) + ITEM_TYPE_EXTRACT, //31 추출도구. + ITEM_TYPE_SECONDARY_COIN, //32 명도전. + ITEM_TYPE_RING, //33 반지 (유니크 슬롯이 아닌 순수 반지 슬롯) + ITEM_TYPE_BELT, //34 벨트 ITEM_TYPE_MAX_NUM, }; @@ -63,7 +63,7 @@ class CItemData enum EWeaponSubTypes { WEAPON_SWORD, - WEAPON_DAGGER, //̵ + WEAPON_DAGGER, //이도류 WEAPON_BOW, WEAPON_TWO_HANDED, WEAPON_BELL, @@ -100,8 +100,8 @@ class CItemData enum ECostumeSubTypes { - COSTUME_BODY, //0 (main look) - COSTUME_HAIR, //1 (Ż) + COSTUME_BODY, //0 갑옷(main look) + COSTUME_HAIR, //1 헤어(탈착가능) COSTUME_NUM_TYPES, }; @@ -136,8 +136,8 @@ class CItemData USE_UNBIND, USE_TIME_CHARGE_PER, USE_TIME_CHARGE_FIX, // 28 - USE_PUT_INTO_BELT_SOCKET, // 29 Ʈ Ͽ ִ - USE_PUT_INTO_RING_SOCKET, // 30 Ͽ ִ (ũ , ߰ ) + USE_PUT_INTO_BELT_SOCKET, // 29 벨트 소켓에 사용할 수 있는 아이템 + USE_PUT_INTO_RING_SOCKET, // 30 반지 소켓에 사용할 수 있는 아이템 (유니크 반지 말고, 새로 추가된 반지 슬롯) }; enum EDragonSoulSubType @@ -168,16 +168,16 @@ class CItemData LIMIT_CON, LIMIT_PCBANG, - /// ο ǽð ð (socket0 Ҹ ð : unix_timestamp Ÿ) + /// 착용 여부와 상관 없이 실시간으로 시간 차감 (socket0에 소멸 시간이 박힘: unix_timestamp 타입) LIMIT_REAL_TIME, - /// ó (Ȥ ) Ÿ Ÿ̸ - /// socket0 밡ɽð(ʴ, 0̸ limit value ) ִٰ - /// socket1 Ƚ socket0 unix_timestamp Ÿ Ҹð . + /// 아이템을 맨 처음 사용(혹은 착용) 한 순간부터 리얼타임 타이머 시작 + /// 최초 사용 전에는 socket0에 사용가능시간(초단위, 0이면 프로토의 limit value값 사용) 값이 쓰여있다가 + /// 아이템 사용시 socket1에 사용 횟수가 박히고 socket0에 unix_timestamp 타입의 소멸시간이 박힘. LIMIT_REAL_TIME_START_FIRST_USE, - /// ð Ǵ - /// socket0 ð ʴ . ( ش 0̸ limit value socket0 ) + /// 아이템을 착용 중일 때만 사용 시간이 차감되는 아이템 + /// socket0에 남은 시간이 초단위로 박힘. (아이템 최초 사용시 해당 값이 0이면 프로토의 limit value값을 socket0에 복사) LIMIT_TIMER_BASED_ON_WEAR, LIMIT_MAX_NUM @@ -185,41 +185,41 @@ class CItemData enum EItemAntiFlag { - ITEM_ANTIFLAG_FEMALE = (1 << 0), // Ұ - ITEM_ANTIFLAG_MALE = (1 << 1), // Ұ - ITEM_ANTIFLAG_WARRIOR = (1 << 2), // Ұ - ITEM_ANTIFLAG_ASSASSIN = (1 << 3), // ڰ Ұ - ITEM_ANTIFLAG_SURA = (1 << 4), // Ұ - ITEM_ANTIFLAG_SHAMAN = (1 << 5), // Ұ - ITEM_ANTIFLAG_GET = (1 << 6), // - ITEM_ANTIFLAG_DROP = (1 << 7), // - ITEM_ANTIFLAG_SELL = (1 << 8), // - ITEM_ANTIFLAG_EMPIRE_A = (1 << 9), // A Ұ - ITEM_ANTIFLAG_EMPIRE_B = (1 << 10), // B Ұ - ITEM_ANTIFLAG_EMPIRE_R = (1 << 11), // C Ұ - ITEM_ANTIFLAG_SAVE = (1 << 12), // - ITEM_ANTIFLAG_GIVE = (1 << 13), // ŷ Ұ - ITEM_ANTIFLAG_PKDROP = (1 << 14), // PK - ITEM_ANTIFLAG_STACK = (1 << 15), // ĥ - ITEM_ANTIFLAG_MYSHOP = (1 << 16), // ø + ITEM_ANTIFLAG_FEMALE = (1 << 0), // 여성 사용 불가 + ITEM_ANTIFLAG_MALE = (1 << 1), // 남성 사용 불가 + ITEM_ANTIFLAG_WARRIOR = (1 << 2), // 무사 사용 불가 + ITEM_ANTIFLAG_ASSASSIN = (1 << 3), // 자객 사용 불가 + ITEM_ANTIFLAG_SURA = (1 << 4), // 수라 사용 불가 + ITEM_ANTIFLAG_SHAMAN = (1 << 5), // 무당 사용 불가 + ITEM_ANTIFLAG_GET = (1 << 6), // 집을 수 없음 + ITEM_ANTIFLAG_DROP = (1 << 7), // 버릴 수 없음 + ITEM_ANTIFLAG_SELL = (1 << 8), // 팔 수 없음 + ITEM_ANTIFLAG_EMPIRE_A = (1 << 9), // A 제국 사용 불가 + ITEM_ANTIFLAG_EMPIRE_B = (1 << 10), // B 제국 사용 불가 + ITEM_ANTIFLAG_EMPIRE_R = (1 << 11), // C 제국 사용 불가 + ITEM_ANTIFLAG_SAVE = (1 << 12), // 저장되지 않음 + ITEM_ANTIFLAG_GIVE = (1 << 13), // 거래 불가 + ITEM_ANTIFLAG_PKDROP = (1 << 14), // PK시 떨어지지 않음 + ITEM_ANTIFLAG_STACK = (1 << 15), // 합칠 수 없음 + ITEM_ANTIFLAG_MYSHOP = (1 << 16), // 개인 상점에 올릴 수 없음 }; enum EItemFlag { - ITEM_FLAG_REFINEABLE = (1 << 0), // + ITEM_FLAG_REFINEABLE = (1 << 0), // 개량 가능 ITEM_FLAG_SAVE = (1 << 1), - ITEM_FLAG_STACKABLE = (1 << 2), // ĥ - ITEM_FLAG_COUNT_PER_1GOLD = (1 << 3), // / - ITEM_FLAG_SLOW_QUERY = (1 << 4), // ÿ SQL + ITEM_FLAG_STACKABLE = (1 << 2), // 여러개 합칠 수 있음 + ITEM_FLAG_COUNT_PER_1GOLD = (1 << 3), // 가격이 개수 / 가격으로 변함 + ITEM_FLAG_SLOW_QUERY = (1 << 4), // 게임 종료시에만 SQL에 쿼리함 ITEM_FLAG_RARE = (1 << 5), ITEM_FLAG_UNIQUE = (1 << 6), ITEM_FLAG_MAKECOUNT = (1 << 7), ITEM_FLAG_IRREMOVABLE = (1 << 8), ITEM_FLAG_CONFIRM_WHEN_USE = (1 << 9), - ITEM_FLAG_QUEST_USE = (1 << 10), // Ʈ ũƮ ? - ITEM_FLAG_QUEST_USE_MULTIPLE= (1 << 11), // Ʈ ũƮ ? + ITEM_FLAG_QUEST_USE = (1 << 10), // 퀘스트 스크립트 돌리는지? + ITEM_FLAG_QUEST_USE_MULTIPLE= (1 << 11), // 퀘스트 스크립트 돌리는지? ITEM_FLAG_UNUSED03 = (1 << 12), // UNUSED03 - ITEM_FLAG_LOG = (1 << 13), // α׸ ΰ? + ITEM_FLAG_LOG = (1 << 13), // 사용시 로그를 남기는 아이템인가? ITEM_FLAG_APPLICABLE = (1 << 14), }; @@ -319,17 +319,17 @@ class CItemData APPLY_ATT_BONUS_TO_SURA, // 61 APPLY_ATT_BONUS_TO_SHAMAN, // 62 APPLY_ATT_BONUS_TO_MONSTER, // 63 - APPLY_MALL_ATTBONUS, // 64 ݷ +x% - APPLY_MALL_DEFBONUS, // 65 +x% - APPLY_MALL_EXPBONUS, // 66 ġ +x% - APPLY_MALL_ITEMBONUS, // 67 x/10 - APPLY_MALL_GOLDBONUS, // 68 x/10 - APPLY_MAX_HP_PCT, // 69 ִ +x% - APPLY_MAX_SP_PCT, // 70 ִ ŷ +x% - APPLY_SKILL_DAMAGE_BONUS, // 71 ų * (100+x)% - APPLY_NORMAL_HIT_DAMAGE_BONUS, // 72 Ÿ * (100+x)% - APPLY_SKILL_DEFEND_BONUS, // 73 ų * (100-x)% - APPLY_NORMAL_HIT_DEFEND_BONUS, // 74 Ÿ * (100-x)% + APPLY_MALL_ATTBONUS, // 64 공격력 +x% + APPLY_MALL_DEFBONUS, // 65 방어력 +x% + APPLY_MALL_EXPBONUS, // 66 경험치 +x% + APPLY_MALL_ITEMBONUS, // 67 아이템 드롭율 x/10배 + APPLY_MALL_GOLDBONUS, // 68 돈 드롭율 x/10배 + APPLY_MAX_HP_PCT, // 69 최대 생명력 +x% + APPLY_MAX_SP_PCT, // 70 최대 정신력 +x% + APPLY_SKILL_DAMAGE_BONUS, // 71 스킬 데미지 * (100+x)% + APPLY_NORMAL_HIT_DAMAGE_BONUS, // 72 평타 데미지 * (100+x)% + APPLY_SKILL_DEFEND_BONUS, // 73 스킬 데미지 방어 * (100-x)% + APPLY_NORMAL_HIT_DEFEND_BONUS, // 74 평타 데미지 방어 * (100-x)% APPLY_EXTRACT_HP_PCT, //75 APPLY_PC_BANG_EXP_BONUS, //76 APPLY_PC_BANG_DROP_BONUS, //77 @@ -338,17 +338,17 @@ class CItemData APPLY_RESIST_SURA, //80 APPLY_RESIST_SHAMAN, //81 APPLY_ENERGY, //82 - APPLY_DEF_GRADE, // 83 . DEF_GRADE_BONUS Ŭ󿡼 ι ǵ (...) ִ. - APPLY_COSTUME_ATTR_BONUS, // 84 ڽƬ ۿ Ӽġ ʽ - APPLY_MAGIC_ATTBONUS_PER, // 85 ݷ +x% - APPLY_MELEE_MAGIC_ATTBONUS_PER, // 86 + и ݷ +x% + APPLY_DEF_GRADE, // 83 방어력. DEF_GRADE_BONUS는 클라에서 두배로 보여지는 의도된 버그(...)가 있다. + APPLY_COSTUME_ATTR_BONUS, // 84 코스튬 아이템에 붙은 속성치 보너스 + APPLY_MAGIC_ATTBONUS_PER, // 85 마법 공격력 +x% + APPLY_MELEE_MAGIC_ATTBONUS_PER, // 86 마법 + 밀리 공격력 +x% - APPLY_RESIST_ICE, // 87 ñ - APPLY_RESIST_EARTH, // 88 - APPLY_RESIST_DARK, // 89 + APPLY_RESIST_ICE, // 87 냉기 저항 + APPLY_RESIST_EARTH, // 88 대지 저항 + APPLY_RESIST_DARK, // 89 어둠 저항 - APPLY_ANTI_CRITICAL_PCT, //90 ũƼ - APPLY_ANTI_PENETRATE_PCT, //91 Ÿ + APPLY_ANTI_CRITICAL_PCT, //90 크리티컬 저항 + APPLY_ANTI_PENETRATE_PCT, //91 관통타격 저항 MAX_APPLY_NUM, // }; diff --git a/src/GameLib/MapBase.h b/src/GameLib/MapBase.h index e32c55f9..39d8cf5e 100644 --- a/src/GameLib/MapBase.h +++ b/src/GameLib/MapBase.h @@ -22,13 +22,13 @@ class CMapBase : public CScreen virtual bool Update(float fX, float fY, float fZ) = 0; virtual void UpdateAroundAmbience(float fX, float fY, float fZ) = 0; virtual float GetHeight(float fx, float fy) = 0; - virtual void OnBeginEnvironment() = 0; // ҷ ⼭ Environment ִ ͵ Ѵ. + virtual void OnBeginEnvironment() = 0; // 렌더링 할 때 불려지며 여기서 Environment에 관련 있는 것들을 셋팅 한다. virtual void ApplyLight(DWORD dwVersion, const D3DLIGHT9& c_rkLight) = 0; protected: virtual void OnRender() = 0; - virtual void OnSetEnvironmentDataPtr() = 0; // Environment Ͱ ҷ. + virtual void OnSetEnvironmentDataPtr() = 0; // Environment 데이터가 설정될 때 불려진다. virtual void OnResetEnvironmentDataPtr() = 0; public: @@ -50,14 +50,14 @@ class CMapBase : public CScreen const std::string & GetName() const { return m_strName; } void SetName(const std::string & cr_strName) { m_strName = cr_strName; } - bool IsCopiedMap() const { return m_strParentMapName.length() > 0; } // " ʹ ִ" ΰ? - const std::string& GetParentMapName() const { return m_strParentMapName; } // ͸ ִ ̸ ( ʼ õǾ ) + bool IsCopiedMap() const { return m_strParentMapName.length() > 0; } // "원본 데이터는 따로 있는" 복사 맵인가? + const std::string& GetParentMapName() const { return m_strParentMapName; } // 원본 데이터를 갖고있는 맵의 이름을 리턴 (복사맵의 경우 필수로 세팅되어야 함) const std::string& GetMapDataDirectory() const { return IsCopiedMap() ? m_strParentMapName : m_strName; } protected: - EMAPTYPE m_eType; // ... Indoor Ourdoor ִ. - std::string m_strName; // ̸. ̸ ĺڰ ? - std::string m_strParentMapName; // ̸. õǾ ִٸ ʹ ParentMap/* ο о´. Ϻθ о ʿ뼭 н. + EMAPTYPE m_eType; // 맵 종류... 현재는 Indoor와 Ourdoor가 있다. + std::string m_strName; // 맵 이름. 맵 이름이 맵 식별자가 될 수 있을까? + std::string m_strParentMapName; // 원본 맵의 이름. 이 값이 세팅되어 있다면 실제 모든 맵 데이터는 ParentMap/* 경로에서 읽어온다. 맵의 일부만 읽어오는 기능은 필요없대서 패스. bool m_bReady; const TEnvironmentData * mc_pEnvironmentData; diff --git a/src/GameLib/MapManager.h b/src/GameLib/MapManager.h index 829693f7..4cc0f574 100644 --- a/src/GameLib/MapManager.h +++ b/src/GameLib/MapManager.h @@ -27,13 +27,13 @@ class CMapManager : public CScreen, public IPhysicsWorld void Initialize(); void Destroy(); - void Create(); // AllocMap ȣ ؼ m_pMap + void Create(); // AllocMap 호출 해서 m_pMap 을 만듬 virtual void Clear(); virtual CMapBase * AllocMap(); ////////////////////////////////////////////////////////////////////////// - // Map Լ + // Map 관리 함수 ////////////////////////////////////////////////////////////////////////// bool IsMapReady(); @@ -51,9 +51,9 @@ class CMapManager : public CScreen, public IPhysicsWorld ////////////////////////////////////////////////////////////////////////// // Environment /// - // NOTE : Environment Ų - // Ǿ . Լ Protected ְ, - // MapManager TimeControl κ ϵ Ѵ. - [levites] + // NOTE : 다음 Environment로 서서히 블렌딩 시킨다 + // 아직 세부 구현은 되어있지 않음. 이 함수들은 Protected로 넣고, + // MapManager에 TimeControl 부분을 구현하도록 한다. - [levites] void SetEnvironmentDataPtr(const TEnvironmentData * c_pEnvironmentData); void ResetEnvironmentDataPtr(const TEnvironmentData * c_pEnvironmentData); void SetEnvironmentData(int nEnvDataIndex); diff --git a/src/GameLib/MapOutdoor.h b/src/GameLib/MapOutdoor.h index ae015f4d..bf2d30ea 100644 --- a/src/GameLib/MapOutdoor.h +++ b/src/GameLib/MapOutdoor.h @@ -27,7 +27,7 @@ typedef struct SOutdoorMapCoordinate { - short m_sTerrainCoordX; // Terrain ǥ + short m_sTerrainCoordX; // Terrain 좌표 short m_sTerrainCoordY; } TOutdoorMapCoordinate; @@ -161,7 +161,7 @@ class CMapOutdoor : public CMapBase bool isTerrainLoaded(WORD wX, WORD wY); bool isAreaLoaded(WORD wX, WORD wY); - void AssignTerrainPtr(); // ǥ (ex. 3x3) ִ ͵ ͸ Ѵ. (Ʈ ҷ) + void AssignTerrainPtr(); // 현재 좌표에서 주위(ex. 3x3)에 있는 것들의 포인터를 연결한다. (업데이트 시 불려짐) void SaveAlphaFogOperation(); void RestoreAlphaFogOperation(); @@ -169,7 +169,7 @@ class CMapOutdoor : public CMapBase ////////////////////////////////////////////////////////////////////////// // New ////////////////////////////////////////////////////////////////////////// - // ʵ ´. + // 여러가지 맵들을 얻는다. void GetHeightMap(const BYTE & c_rucTerrainNum, WORD ** pwHeightMap); void GetNormalMap(const BYTE & c_rucTerrainNum, char ** pucNormalMap); @@ -182,19 +182,19 @@ class CMapOutdoor : public CMapBase // Terrain ////////////////////////////////////////////////////////////////////////// protected: - // + // 데이터 CTerrain * m_pTerrain[AROUND_AREA_NUM]; // Terrain - CTerrainPatchProxy * m_pTerrainPatchProxyList; // CTerrain Ҷ ϴ ġ... Seamless Map CTerrainκ ... + CTerrainPatchProxy * m_pTerrainPatchProxyList; // CTerrain을 랜더링 할때 실제로 랜더링하는 폴리곤 패치들... Seamless Map 을 위해 CTerrain으로부터 독립... - long m_lViewRadius; // þ Ÿ.. .. - float m_fHeightScale; // ... 1.0϶ 0~655.35ͱ ǥ . + long m_lViewRadius; // 시야 거리.. 셀단위임.. + float m_fHeightScale; // 높이 스케일... 1.0일때 0~655.35미터까지 표현 가능. - short m_sTerrainCountX, m_sTerrainCountY; // seamless map ȿ  Terrain + short m_sTerrainCountX, m_sTerrainCountY; // seamless map 안에 들어가는 Terrain개수 - TOutdoorMapCoordinate m_CurCoordinate; // ǥ + TOutdoorMapCoordinate m_CurCoordinate; // 현재의 좌표 long m_lCurCoordStartX, m_lCurCoordStartY; - TOutdoorMapCoordinate m_PrevCoordinate; // ǥ + TOutdoorMapCoordinate m_PrevCoordinate; // 현재의 좌표 TOutdoorMapCoordinateMap m_EntryPointMap; WORD m_wPatchCount; @@ -316,7 +316,7 @@ class CMapOutdoor : public CMapBase ////////////////////////////////////////////////////////////////////////// // New ////////////////////////////////////////////////////////////////////////// - long m_lCenterX, m_lCenterY; // Terrain ǥ ǥ... + long m_lCenterX, m_lCenterY; // Terrain 좌표 내의 셀 좌표... long m_lOldReadX, m_lOldReadY; /* Last center */ ////////////////////////////////////////////////////////////////////////// diff --git a/src/GameLib/MapType.h b/src/GameLib/MapType.h index 11e26cea..d84fb815 100644 --- a/src/GameLib/MapType.h +++ b/src/GameLib/MapType.h @@ -182,7 +182,7 @@ typedef struct SEnvironmentData std::string strMainFlareTextureFileName; float fMainFlareSize; - BOOL bReserve; // ܺο ġ + BOOL bReserve; // 외부에서 설정을 고치지 않음 } TEnvironmentData; typedef std::map TEnvironmentDataMap; diff --git a/src/GameLib/MonsterAreaInfo.h b/src/GameLib/MonsterAreaInfo.h index 8f314728..e118ba5c 100644 --- a/src/GameLib/MonsterAreaInfo.h +++ b/src/GameLib/MonsterAreaInfo.h @@ -89,17 +89,17 @@ protected: protected: EMonsterAreaInfoType m_eMonsterAreaInfoType; - // Group Type + // Group Type 정보 DWORD m_dwGroupID; std::string m_strGroupName; std::string m_strLeaderName; DWORD m_dwFollowerCount; - // Monster Type + // Monster Type 정보 DWORD m_dwVID; std::string m_strMonsterName; - // + // 공통 정보 DWORD m_dwMonsterCount; EMonsterDir m_eMonsterDir; D3DXVECTOR2 m_v2Monsterdirection; diff --git a/src/GameLib/PhysicsObject.h b/src/GameLib/PhysicsObject.h index 302e51b2..69c2bcaa 100644 --- a/src/GameLib/PhysicsObject.h +++ b/src/GameLib/PhysicsObject.h @@ -29,8 +29,8 @@ private: }; class CActorInstance; -//NOTE : ȵ Dependency Inversion interface ϱ ؼ ̹Ĵ -// 踦 Ѵٸ world live object ݴ base project (gamelib̳ base project ؾ Ѵ ) +//NOTE : 맘에 안들지만 Dependency Inversion을 막고 이전과 동일한 interface를 유지하기 위해서 이방식대로 간다 +//하지만 제대로 설계를 한다면 world와 live object들의 관리는 조금더 base project에서 (gamelib이나 더 base project에서 해야 한다 ) class IObjectManager { public: diff --git a/src/GameLib/RaceData.h b/src/GameLib/RaceData.h index 94d43d07..61becf22 100644 --- a/src/GameLib/RaceData.h +++ b/src/GameLib/RaceData.h @@ -16,8 +16,8 @@ class CRaceData enum EParts { // Share index with server - // ECharacterEquipmentPart ּ. - //Ŷ ũⰡ մϴ ּ߰. + // ECharacterEquipmentPart도 수정해주세요. + //패킷 크기가 변합니다 서버와 상의후 추가해주세요. PART_MAIN, PART_WEAPON, PART_HEAD, diff --git a/src/GameLib/RaceMotionData.h b/src/GameLib/RaceMotionData.h index 5d61894c..ca4fe624 100644 --- a/src/GameLib/RaceMotionData.h +++ b/src/GameLib/RaceMotionData.h @@ -56,41 +56,41 @@ class CRaceMotionData enum EName { - NAME_NONE, // 0 - NAME_WAIT, // 1 (00.msa) - NAME_WALK, // 2 ȱ (02.msa) - NAME_RUN, // 3 ٱ (03.msa) - NAME_CHANGE_WEAPON, // 4 ٲٱ - NAME_DAMAGE, // 5 ± (30.msa) - NAME_DAMAGE_FLYING, // 6 鳯ư (32.msa) - NAME_STAND_UP, // 7 Ͼ (33.msa) - NAME_DAMAGE_BACK, // 8 ĸ± (34.msa) - NAME_DAMAGE_FLYING_BACK, // 9 ĸ鳯ư (35.msa) - NAME_STAND_UP_BACK, // 10 ĸϾ (36.msa) - NAME_DEAD, // 11 ױ (31.msa) - NAME_DEAD_BACK, // 12 ĸױ (37.msa) - NAME_NORMAL_ATTACK, // 13 (20.msa) - NAME_COMBO_ATTACK_1, // 14 ޺ - NAME_COMBO_ATTACK_2, // 15 ޺ - NAME_COMBO_ATTACK_3, // 16 ޺ - NAME_COMBO_ATTACK_4, // 17 ޺ - NAME_COMBO_ATTACK_5, // 18 ޺ - NAME_COMBO_ATTACK_6, // 19 ޺ - NAME_COMBO_ATTACK_7, // 20 ޺ - NAME_COMBO_ATTACK_8, // 21 ޺ - NAME_INTRO_WAIT, // 22 ȭ - NAME_INTRO_SELECTED, // 23 ȭ - NAME_INTRO_NOT_SELECTED, // 24 ȭ - NAME_SPAWN, // 25 ȯ - NAME_FISHING_THROW, // 26 - NAME_FISHING_WAIT, // 27 - NAME_FISHING_STOP, // 28 ׸α - NAME_FISHING_REACT, // 29 - NAME_FISHING_CATCH, // 30 - NAME_FISHING_FAIL, // 31 - NAME_STOP, // 32 ߱ - NAME_SPECIAL_1, // 33 /NPC Ư (24.msa) - NAME_SPECIAL_2, // 34 /NPC Ư (25.msa) + NAME_NONE, // 0 없음 + NAME_WAIT, // 1 대기 (00.msa) + NAME_WALK, // 2 걷기 (02.msa) + NAME_RUN, // 3 뛰기 (03.msa) + NAME_CHANGE_WEAPON, // 4 무기바꾸기 + NAME_DAMAGE, // 5 정면맞기 (30.msa) + NAME_DAMAGE_FLYING, // 6 정면날아가기 (32.msa) + NAME_STAND_UP, // 7 정면일어나기 (33.msa) + NAME_DAMAGE_BACK, // 8 후면맞기 (34.msa) + NAME_DAMAGE_FLYING_BACK, // 9 후면날아가기 (35.msa) + NAME_STAND_UP_BACK, // 10 후면일어나기 (36.msa) + NAME_DEAD, // 11 죽기 (31.msa) + NAME_DEAD_BACK, // 12 후면죽기 (37.msa) + NAME_NORMAL_ATTACK, // 13 공격 (20.msa) + NAME_COMBO_ATTACK_1, // 14 콤보 공격 + NAME_COMBO_ATTACK_2, // 15 콤보 공격 + NAME_COMBO_ATTACK_3, // 16 콤보 공격 + NAME_COMBO_ATTACK_4, // 17 콤보 공격 + NAME_COMBO_ATTACK_5, // 18 콤보 공격 + NAME_COMBO_ATTACK_6, // 19 콤보 공격 + NAME_COMBO_ATTACK_7, // 20 콤보 공격 + NAME_COMBO_ATTACK_8, // 21 콤보 공격 + NAME_INTRO_WAIT, // 22 선택화면 대기 + NAME_INTRO_SELECTED, // 23 선택화면 선택 + NAME_INTRO_NOT_SELECTED, // 24 선택화면 비선택 + NAME_SPAWN, // 25 소환 + NAME_FISHING_THROW, // 26 낚시 던지기 + NAME_FISHING_WAIT, // 27 낚시 대기 + NAME_FISHING_STOP, // 28 낚시 그만두기 + NAME_FISHING_REACT, // 29 낚시 반응 + NAME_FISHING_CATCH, // 30 낚시 잡기 + NAME_FISHING_FAIL, // 31 낚시 실패 + NAME_STOP, // 32 말 멈추기 + NAME_SPECIAL_1, // 33 몬스터/NPC 특수 동작 (24.msa) + NAME_SPECIAL_2, // 34 몬스터/NPC 특수 동작 (25.msa) NAME_SPECIAL_3, NAME_SPECIAL_4, NAME_SPECIAL_5, @@ -139,7 +139,7 @@ class CRaceMotionData NAME_DANCE_3, NAME_DANCE_4, NAME_DANCE_5, - NAME_DANCE_6, // Ÿ + NAME_DANCE_6, // 강남스타일 NAME_DANCE_END = NAME_DANCE_1 + 16, @@ -210,8 +210,8 @@ class CRaceMotionData void SetName(UINT eName); - UINT GetType() const; // Ÿ - bool IsLock() const; // ΰ? (ٸ ǿ ĵ ) + UINT GetType() const; // 모션 타입 얻기 + bool IsLock() const; // 락된 모션 인가? (다른 모션에 캔슬되지 않음) int GetLoopCount() const; @@ -225,7 +225,7 @@ class CRaceMotionData void SetAccumulationPosition(const TPixelPosition & c_rPos); const TPixelPosition & GetAccumulationPosition() { return m_accumulationPosition; } - BOOL IsComboInputTimeData() const; // ޺ Է Ÿ̹ Ͱ ִ°? + BOOL IsComboInputTimeData() const; // 콤보 입력 타이밍 데이터가 있는가? float GetComboInputStartTime() const; float GetNextComboTime() const; diff --git a/src/GameLib/StdAfx.h b/src/GameLib/StdAfx.h index 1e1287aa..90268e0d 100644 --- a/src/GameLib/StdAfx.h +++ b/src/GameLib/StdAfx.h @@ -6,7 +6,7 @@ #endif #pragma warning(disable:4710) // not inlined -#pragma warning(disable:4786) // character 255 Ѿ° +#pragma warning(disable:4786) // character 255 넘어가는거 끄기 #pragma warning(disable:4244) // type conversion possible lose of data #pragma warning(disable:4018) diff --git a/src/PRTerrainLib/Terrain.h b/src/PRTerrainLib/Terrain.h index d6cc607b..f5e8d765 100644 --- a/src/PRTerrainLib/Terrain.h +++ b/src/PRTerrainLib/Terrain.h @@ -74,7 +74,7 @@ class CTerrainImpl public: static void SetTextureSet(CTextureSet * pTextureSet); - static CTextureSet * GetTextureSet(); // ؾ + static CTextureSet * GetTextureSet(); // 무조건 성공해야 함 protected: static CTextureSet * ms_pTextureSet; @@ -134,7 +134,7 @@ class CTerrainImpl ////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////// - // TileMap HeightMap + // TileMap과 HeightMap 비율 // int m_iHeightTileRatio; ////////////////////////////////////////////////////////////////////////// diff --git a/src/PRTerrainLib/TextureSet.h b/src/PRTerrainLib/TextureSet.h index b62d9038..3221f406 100644 --- a/src/PRTerrainLib/TextureSet.h +++ b/src/PRTerrainLib/TextureSet.h @@ -28,7 +28,7 @@ typedef struct STerrainTexture float UOffset; float VOffset; bool bSplat; - unsigned short Begin, End; // 0 ~ 65535 16bit heightfield ̰. + unsigned short Begin, End; // 0 ~ 65535 의 16bit heightfield 높이값. D3DXMATRIX m_matTransform; } TTerrainTexture; diff --git a/src/UserInterface/AccountConnector.h b/src/UserInterface/AccountConnector.h index 89337226..67134284 100644 --- a/src/UserInterface/AccountConnector.h +++ b/src/UserInterface/AccountConnector.h @@ -64,8 +64,8 @@ class CAccountConnector : public CNetworkStream, public CSingleton Ŭ̾Ʈ + bool SaveBlockFromCompressedData(DWORD posBlock, const BYTE * pbComp, DWORD dwCompSize); // 서버 -> 클라이언트 - DWORD GetEmptyPosition(); // ũ ġ ´. + DWORD GetEmptyPosition(); // 빈 마크 위치를 얻는다. void GetBlockCRCList(DWORD * crcList); void GetDiffBlocks(const DWORD * crcList, std::map & mapDiffBlocks); diff --git a/src/UserInterface/MarkManager.h b/src/UserInterface/MarkManager.h index f8fa1427..90df0579 100644 --- a/src/UserInterface/MarkManager.h +++ b/src/UserInterface/MarkManager.h @@ -32,11 +32,11 @@ class CGuildMarkManager : public singleton // void SetMarkPathPrefix(const char * prefix); - bool LoadMarkIndex(); // ũ ε ҷ ( ) - bool SaveMarkIndex(); // ũ ε ϱ + bool LoadMarkIndex(); // 마크 인덱스 불러오기 (서버에서만 사용) + bool SaveMarkIndex(); // 마크 인덱스 저장하기 - void LoadMarkImages(); // ũ ̹ ҷ - void SaveMarkImage(DWORD imgIdx); // ũ ̹ + void LoadMarkImages(); // 모든 마크 이미지를 불러오기 + void SaveMarkImage(DWORD imgIdx); // 마크 이미지 저장 bool GetMarkImageFilename(DWORD imgIdx, std::string & path) const; bool AddMarkIDByGuildID(DWORD guildID, DWORD markID); diff --git a/src/UserInterface/MovieMan.h b/src/UserInterface/MovieMan.h index 54acfc9d..d089c4fa 100644 --- a/src/UserInterface/MovieMan.h +++ b/src/UserInterface/MovieMan.h @@ -1,11 +1,11 @@ #pragma once -// ̵ƿ () +// 페이드아웃 길이(초) #define MOVIEMAN_FADE_DURATION 1300 #define MOVIEMAN_SKIPPABLE_YES true #define MOVIEMAN_POSTEFFECT_FADEOUT 1 -// DX 7.0 +// 동영상 재생에 DX 7.0 사용 struct IDirectDraw; struct IDirectDrawSurface; struct IDirectDrawMediaStream; diff --git a/src/UserInterface/NetworkActorManager.h b/src/UserInterface/NetworkActorManager.h index 629b967c..577feba8 100644 --- a/src/UserInterface/NetworkActorManager.h +++ b/src/UserInterface/NetworkActorManager.h @@ -90,7 +90,7 @@ struct SNetworkUpdateActorData short m_sAlignment; BYTE m_byPKMode; DWORD m_dwMountVnum; - DWORD m_dwStateFlags; // Create ̴ + DWORD m_dwStateFlags; // 본래 Create 때만 쓰이는 변수임 CAffectFlagContainer m_kAffectFlags; SNetworkUpdateActorData() diff --git a/src/UserInterface/Packet.h b/src/UserInterface/Packet.h index 048aee1f..e86e61d4 100644 --- a/src/UserInterface/Packet.h +++ b/src/UserInterface/Packet.h @@ -4,18 +4,18 @@ #include "Hackshield.h" #include METIN2HS_INCLUDE_ANTICPXSVR #else -#pragma pack(push) // alignment +#pragma pack(push) //기존 alignment 저장 #pragma pack(8) #define ANTICPX_TRANS_BUFFER_MAX 400 typedef struct _AHNHS_TRANS_BUFFER { - unsigned char byBuffer[ANTICPX_TRANS_BUFFER_MAX/* ۼ Ŷ ִ ũ */]; + unsigned char byBuffer[ANTICPX_TRANS_BUFFER_MAX/* 송수신 패킷의 최대 크기 */]; unsigned short nLength; } AHNHS_TRANS_BUFFER, *PAHNHS_TRANS_BUFFER; -#pragma pack(pop) // alignment . +#pragma pack(pop) // 기존 alignment 복구. #endif /* !USE_AHNLAB_HACKSHIELD */ #include "../gamelib/RaceData.h" @@ -30,8 +30,8 @@ enum HEADER_CG_LOGIN = 1, HEADER_CG_ATTACK = 2, HEADER_CG_CHAT = 3, - HEADER_CG_PLAYER_CREATE = 4, // ο ÷̾ - HEADER_CG_PLAYER_DESTROY = 5, // ÷̾ . + HEADER_CG_PLAYER_CREATE = 4, // 새로운 플래이어를 생성 + HEADER_CG_PLAYER_DESTROY = 5, // 플래이어를 삭제. HEADER_CG_PLAYER_SELECT = 6, HEADER_CG_CHARACTER_MOVE = 7, HEADER_CG_SYNC_POSITION = 8, @@ -95,8 +95,8 @@ enum HEADER_CG_MESSENGER = 67, //HEADER_BLANK68 = 68, HEADER_CG_MALL_CHECKOUT = 69, - HEADER_CG_SAFEBOX_CHECKIN = 70, // â ִ´. - HEADER_CG_SAFEBOX_CHECKOUT = 71, // â ´. + HEADER_CG_SAFEBOX_CHECKIN = 70, // 아이템을 창고에 넣는다. + HEADER_CG_SAFEBOX_CHECKOUT = 71, // 아이템을 창고로 부터 빼온다. HEADER_CG_PARTY_INVITE = 72, HEADER_CG_PARTY_INVITE_ANSWER = 73, HEADER_CG_PARTY_REMOVE = 74, @@ -144,7 +144,7 @@ enum HEADER_CG_GUILD_SYMBOL_CRC = 113, HEADER_CG_SCRIPT_SELECT_ITEM = 114, HEADER_CG_LOGIN4 = 115, - HEADER_CG_LOGIN5_OPENID = 116, //OpenID : Ű . + HEADER_CG_LOGIN5_OPENID = 116, //OpenID : 실행시 받은 인증키를 서버에 보냄. HEADER_CG_RUNUP_MATRIX_ANSWER = 201, HEADER_CG_NEWCIBN_PASSPOD_ANSWER = 202, @@ -188,17 +188,17 @@ enum HEADER_GC_CHANGE_SPEED = 18, HEADER_GC_CHARACTER_UPDATE = 19, #if defined(GAIDEN) - HEADER_GC_ITEM_DEL = 20, // â ߰ - HEADER_GC_ITEM_SET = 21, // â ߰ + HEADER_GC_ITEM_DEL = 20, // 아이템 창에 추가 + HEADER_GC_ITEM_SET = 21, // 아이템 창에 추가 #else - HEADER_GC_ITEM_SET = 20, // â ߰ - HEADER_GC_ITEM_SET2 = 21, // â ߰ + HEADER_GC_ITEM_SET = 20, // 아이템 창에 추가 + HEADER_GC_ITEM_SET2 = 21, // 아이템 창에 추가 #endif - HEADER_GC_ITEM_USE = 22, // ( 鿡 ֱ ) - HEADER_GC_ITEM_DROP = 23, // - HEADER_GC_ITEM_UPDATE = 25, // ġ Ʈ - HEADER_GC_ITEM_GROUND_ADD = 26, // ٴڿ ߰ - HEADER_GC_ITEM_GROUND_DEL = 27, // ٴڿ + HEADER_GC_ITEM_USE = 22, // 아이템 사용 (주위 사람들에게 보여주기 위해) + HEADER_GC_ITEM_DROP = 23, // 아이템 버리기 + HEADER_GC_ITEM_UPDATE = 25, // 아이템 수치 업데이트 + HEADER_GC_ITEM_GROUND_ADD = 26, // 바닥에 아이템 추가 + HEADER_GC_ITEM_GROUND_DEL = 27, // 바닥에서 아이템 삭제 HEADER_GC_QUICKSLOT_ADD = 28, HEADER_GC_QUICKSLOT_DEL = 29, HEADER_GC_QUICKSLOT_SWAP = 30, @@ -386,13 +386,13 @@ enum PLAYER_PER_ACCOUNT3 = 3, PLAYER_PER_ACCOUNT4 = 4, - PLAYER_ITEM_SLOT_MAX_NUM = 20, // ÷̾ Դ  . + PLAYER_ITEM_SLOT_MAX_NUM = 20, // 플래이어의 슬롯당 들어가는 갯수. QUICKSLOT_MAX_LINE = 4, - QUICKSLOT_MAX_COUNT_PER_LINE = 8, // Ŭ̾Ʈ + QUICKSLOT_MAX_COUNT_PER_LINE = 8, // 클라이언트 임의 결정값 QUICKSLOT_MAX_COUNT = QUICKSLOT_MAX_LINE * QUICKSLOT_MAX_COUNT_PER_LINE, - QUICKSLOT_MAX_NUM = 36, // ִ + QUICKSLOT_MAX_NUM = 36, // 서버와 맞춰져 있는 값 SHOP_HOST_ITEM_MAX_NUM = 40, @@ -465,7 +465,7 @@ typedef struct packet_mark_idxlist BYTE header; DWORD bufSize; WORD count; - //ڿ size * (WORD + WORD)ŭ + //뒤에 size * (WORD + WORD)만큼 데이터 붙음 } TPacketGCMarkIDXList; typedef struct packet_mark_block @@ -474,7 +474,7 @@ typedef struct packet_mark_block DWORD bufSize; BYTE imgIdx; DWORD count; - // ڿ 64 x 48 x ȼũ(4Ʈ) = 12288ŭ + // 뒤에 64 x 48 x 픽셀크기(4바이트) = 12288만큼 데이터 붙음 } TPacketGCMarkBlock; typedef struct command_symbol_upload @@ -543,7 +543,7 @@ typedef struct command_login char pwd[PASS_MAX_NUM + 1]; } TPacketCGLogin; -// start - Ŷ +// start - 권한 서버 접속을 위한 패킷들 typedef struct command_login2 { BYTE header; @@ -566,7 +566,7 @@ typedef struct command_login5 char authKey[OPENID_AUTHKEY_LEN + 1]; DWORD adwClientKey[4]; } TPacketCGLogin5; -// end - Ŷ +// end - 권한 서버 접속을 위한 패킷들 typedef struct command_direct_enter { @@ -585,8 +585,8 @@ typedef struct command_player_select typedef struct command_attack { BYTE header; - BYTE bType; // - DWORD dwVictimVID; // VID + BYTE bType; // 공격 유형 + DWORD dwVictimVID; // 적 VID BYTE bCRCMagicCubeProcPiece; BYTE bCRCMagicCubeFilePiece; } TPacketCGAttack; @@ -1014,9 +1014,9 @@ typedef struct SShopItemTable DWORD vnum; BYTE count; - TItemPos pos; // PC ̿ - DWORD price; // PC ̿ - BYTE display_pos; // PC ̿, ġ. + TItemPos pos; // PC 상점에만 이용 + DWORD price; // PC 상점에만 이용 + BYTE display_pos; // PC 상점에만 이용, 보일 위치. } TShopItemTable; typedef struct SPacketCGMyShop @@ -1116,18 +1116,18 @@ typedef struct command_script_select_item // From Server enum EPhase { - PHASE_CLOSE, // (Ǵ ) - PHASE_HANDSHAKE, // Ǽ..;; - PHASE_LOGIN, // α - PHASE_SELECT, // ij ȭ - PHASE_LOADING, // ε ȭ - PHASE_GAME, // ȭ - PHASE_DEAD, // ׾ .. ( ȿ ִ ..) + PHASE_CLOSE, // 끊기는 상태 (또는 끊기 전 상태) + PHASE_HANDSHAKE, // 악수..;; + PHASE_LOGIN, // 로그인 중 + PHASE_SELECT, // 캐릭터 선택 화면 + PHASE_LOADING, // 선택 후 로딩 화면 + PHASE_GAME, // 게임 화면 + PHASE_DEAD, // 죽었을 때.. (게임 안에 있는 것일 수도..) - PHASE_DBCLIENT_CONNECTING, // - PHASE_DBCLIENT, // - PHASE_P2P, // - PHASE_AUTH, // α + PHASE_DBCLIENT_CONNECTING, // 서버용 + PHASE_DBCLIENT, // 서버용 + PHASE_P2P, // 서버용 + PHASE_AUTH, // 로그인 인증 용 }; typedef struct packet_phase @@ -1136,7 +1136,7 @@ typedef struct packet_phase BYTE phase; } TPacketGCPhase; -typedef struct packet_blank // Ŷ. +typedef struct packet_blank // 공백패킷. { BYTE header; } TPacketGCBlank; @@ -1273,7 +1273,7 @@ enum EPKModes PK_MODE_MAX_NUM, }; -// 2004.11.20.myevan.CRaceData::PART_MAX_NUM ϰ - ϴ°Ͱ ġ +// 2004.11.20.myevan.CRaceData::PART_MAX_NUM 사용안하게 수정 - 서버에서 사용하는것과 일치하지 않음 enum ECharacterEquipmentPart { CHR_EQUIPPART_ARMOR, @@ -1293,7 +1293,7 @@ typedef struct packet_char_additional_info BYTE bEmpire; DWORD dwGuildID; DWORD dwLevel; - short sAlignment; //ġ + short sAlignment; //선악치 BYTE bPKMode; DWORD dwMountVnum; } TPacketGCCharacterAdditionalInfo; @@ -1405,14 +1405,14 @@ typedef struct packet_GlobalTime enum EChatType { - CHAT_TYPE_TALKING, /* ׳ ä */ - CHAT_TYPE_INFO, /* ( , ġ . ) */ - CHAT_TYPE_NOTICE, /* */ - CHAT_TYPE_PARTY, /* Ƽ */ - CHAT_TYPE_GUILD, /* 帻 */ - CHAT_TYPE_COMMAND, /* */ - CHAT_TYPE_SHOUT, /* ġ */ - CHAT_TYPE_WHISPER, // ʹ ʴ Only Client Enum + CHAT_TYPE_TALKING, /* 그냥 채팅 */ + CHAT_TYPE_INFO, /* 정보 (아이템을 집었다, 경험치를 얻었다. 등) */ + CHAT_TYPE_NOTICE, /* 공지사항 */ + CHAT_TYPE_PARTY, /* 파티말 */ + CHAT_TYPE_GUILD, /* 길드말 */ + CHAT_TYPE_COMMAND, /* 명령 */ + CHAT_TYPE_SHOUT, /* 외치기 */ + CHAT_TYPE_WHISPER, // 서버와는 연동되지 않는 Only Client Enum CHAT_TYPE_BIG_NOTICE, CHAT_TYPE_MAX_NUM, }; @@ -1426,7 +1426,7 @@ typedef struct packet_chatting BYTE bEmpire; } TPacketGCChat; -typedef struct packet_whisper // Ŷ +typedef struct packet_whisper // 가변 패킷 { BYTE bHeader; WORD wSize; @@ -1513,57 +1513,57 @@ enum EPointTypes POINT_MAX_HP, // 6 POINT_SP, // 7 POINT_MAX_SP, // 8 - POINT_STAMINA, // 9 ׹̳ - POINT_MAX_STAMINA, // 10 ִ ׹̳ + POINT_STAMINA, // 9 스테미너 + POINT_MAX_STAMINA, // 10 최대 스테미너 POINT_GOLD, // 11 - POINT_ST, // 12 ٷ - POINT_HT, // 13 ü - POINT_DX, // 14 ø - POINT_IQ, // 15 ŷ - POINT_ATT_POWER, // 16 ݷ - POINT_ATT_SPEED, // 17 ݼӵ - POINT_EVADE_RATE, // 18 ȸ - POINT_MOV_SPEED, // 19 ̵ӵ - POINT_DEF_GRADE, // 20 - POINT_CASTING_SPEED, // 21 ֹӵ (ٿŸ*100) / (100 + ̰) = ٿ Ÿ - POINT_MAGIC_ATT_GRADE, // 22 ݷ - POINT_MAGIC_DEF_GRADE, // 23 - POINT_EMPIRE_POINT, // 24 - POINT_LEVEL_STEP, // 25 ܰ.. (1 2 3 , 4 Ǹ ) - POINT_STAT, // 26 ɷġ ø ִ - POINT_SUB_SKILL, // 27 ų Ʈ - POINT_SKILL, // 28 Ƽ ų Ʈ -// POINT_SKILL_PASV, // 27 нú ø ִ -// POINT_SKILL_ACTIVE, // 28 Ƽ ų Ʈ - POINT_MIN_ATK, // 29 ּ ı - POINT_MAX_ATK, // 30 ִ ı - POINT_PLAYTIME, // 31 ÷̽ð - POINT_HP_REGEN, // 32 HP ȸ - POINT_SP_REGEN, // 33 SP ȸ + POINT_ST, // 12 근력 + POINT_HT, // 13 체력 + POINT_DX, // 14 민첩성 + POINT_IQ, // 15 정신력 + POINT_ATT_POWER, // 16 공격력 + POINT_ATT_SPEED, // 17 공격속도 + POINT_EVADE_RATE, // 18 회피율 + POINT_MOV_SPEED, // 19 이동속도 + POINT_DEF_GRADE, // 20 방어등급 + POINT_CASTING_SPEED, // 21 주문속도 (쿨다운타임*100) / (100 + 이값) = 최종 쿨다운 타임 + POINT_MAGIC_ATT_GRADE, // 22 마법공격력 + POINT_MAGIC_DEF_GRADE, // 23 마법방어력 + POINT_EMPIRE_POINT, // 24 제국점수 + POINT_LEVEL_STEP, // 25 한 레벨에서의 단계.. (1 2 3 될 때 보상, 4 되면 레벨 업) + POINT_STAT, // 26 능력치 올릴 수 있는 개수 + POINT_SUB_SKILL, // 27 보조 스킬 포인트 + POINT_SKILL, // 28 액티브 스킬 포인트 +// POINT_SKILL_PASV, // 27 패시브 기술 올릴 수 있는 개수 +// POINT_SKILL_ACTIVE, // 28 액티브 스킬 포인트 + POINT_MIN_ATK, // 29 최소 파괴력 + POINT_MAX_ATK, // 30 최대 파괴력 + POINT_PLAYTIME, // 31 플레이시간 + POINT_HP_REGEN, // 32 HP 회복률 + POINT_SP_REGEN, // 33 SP 회복률 - POINT_BOW_DISTANCE, // 34 Ȱ Ÿ ġ (meter) + POINT_BOW_DISTANCE, // 34 활 사정거리 증가치 (meter) - POINT_HP_RECOVERY, // 35 ü ȸ - POINT_SP_RECOVERY, // 36 ŷ ȸ + POINT_HP_RECOVERY, // 35 체력 회복 증가량 + POINT_SP_RECOVERY, // 36 정신력 회복 증가량 - POINT_POISON_PCT, // 37 Ȯ - POINT_STUN_PCT, // 38 Ȯ - POINT_SLOW_PCT, // 39 ο Ȯ - POINT_CRITICAL_PCT, // 40 ũƼ Ȯ - POINT_PENETRATE_PCT, // 41 Ÿ Ȯ - POINT_CURSE_PCT, // 42 Ȯ + POINT_POISON_PCT, // 37 독 확률 + POINT_STUN_PCT, // 38 기절 확률 + POINT_SLOW_PCT, // 39 슬로우 확률 + POINT_CRITICAL_PCT, // 40 크리티컬 확률 + POINT_PENETRATE_PCT, // 41 관통타격 확률 + POINT_CURSE_PCT, // 42 저주 확률 - POINT_ATTBONUS_HUMAN, // 43 ΰ - POINT_ATTBONUS_ANIMAL, // 44 % - POINT_ATTBONUS_ORC, // 45 Ϳ % - POINT_ATTBONUS_MILGYO, // 46 б % - POINT_ATTBONUS_UNDEAD, // 47 ü % - POINT_ATTBONUS_DEVIL, // 48 (Ǹ) % - POINT_ATTBONUS_INSECT, // 49 - POINT_ATTBONUS_FIRE, // 50 ȭ - POINT_ATTBONUS_ICE, // 51 - POINT_ATTBONUS_DESERT, // 52 縷 + POINT_ATTBONUS_HUMAN, // 43 인간에게 강함 + POINT_ATTBONUS_ANIMAL, // 44 동물에게 데미지 % 증가 + POINT_ATTBONUS_ORC, // 45 웅귀에게 데미지 % 증가 + POINT_ATTBONUS_MILGYO, // 46 밀교에게 데미지 % 증가 + POINT_ATTBONUS_UNDEAD, // 47 시체에게 데미지 % 증가 + POINT_ATTBONUS_DEVIL, // 48 마귀(악마)에게 데미지 % 증가 + POINT_ATTBONUS_INSECT, // 49 벌레족 + POINT_ATTBONUS_FIRE, // 50 화염족 + POINT_ATTBONUS_ICE, // 51 빙설족 + POINT_ATTBONUS_DESERT, // 52 사막족 POINT_ATTBONUS_UNUSED0, // 53 UNUSED0 POINT_ATTBONUS_UNUSED1, // 54 UNUSED1 POINT_ATTBONUS_UNUSED2, // 55 UNUSED2 @@ -1575,42 +1575,42 @@ enum EPointTypes POINT_ATTBONUS_UNUSED8, // 61 UNUSED8 POINT_ATTBONUS_UNUSED9, // 62 UNUSED9 - POINT_STEAL_HP, // 63 - POINT_STEAL_SP, // 64 ŷ + POINT_STEAL_HP, // 63 생명력 흡수 + POINT_STEAL_SP, // 64 정신력 흡수 - POINT_MANA_BURN_PCT, // 65 + POINT_MANA_BURN_PCT, // 65 마나 번 - /// ؽ ʽ /// + /// 피해시 보너스 /// - POINT_DAMAGE_SP_RECOVER, // 66 ݴ ŷ ȸ Ȯ + POINT_DAMAGE_SP_RECOVER, // 66 공격당할 시 정신력 회복 확률 - POINT_BLOCK, // 67 - POINT_DODGE, // 68 ȸ + POINT_BLOCK, // 67 블럭율 + POINT_DODGE, // 68 회피율 POINT_RESIST_SWORD, // 69 POINT_RESIST_TWOHAND, // 70 POINT_RESIST_DAGGER, // 71 POINT_RESIST_BELL, // 72 POINT_RESIST_FAN, // 73 - POINT_RESIST_BOW, // 74 ȭ : - POINT_RESIST_FIRE, // 75 ȭ : ȭݿ - POINT_RESIST_ELEC, // 76 : ݿ - POINT_RESIST_MAGIC, // 77 : - POINT_RESIST_WIND, // 78 ٶ : ٶݿ + POINT_RESIST_BOW, // 74 화살 저항 : 대미지 감소 + POINT_RESIST_FIRE, // 75 화염 저항 : 화염공격에 대한 대미지 감소 + POINT_RESIST_ELEC, // 76 전기 저항 : 전기공격에 대한 대미지 감소 + POINT_RESIST_MAGIC, // 77 술법 저항 : 모든술법에 대한 대미지 감소 + POINT_RESIST_WIND, // 78 바람 저항 : 바람공격에 대한 대미지 감소 - POINT_REFLECT_MELEE, // 79 ݻ + POINT_REFLECT_MELEE, // 79 공격 반사 - /// Ư ؽ /// - POINT_REFLECT_CURSE, // 80 ݻ - POINT_POISON_REDUCE, // 81 + /// 특수 피해시 /// + POINT_REFLECT_CURSE, // 80 저주 반사 + POINT_POISON_REDUCE, // 81 독데미지 감소 - /// Ҹ /// - POINT_KILL_SP_RECOVER, // 82 Ҹ MP ȸ + /// 적 소멸시 /// + POINT_KILL_SP_RECOVER, // 82 적 소멸시 MP 회복 POINT_EXP_DOUBLE_BONUS, // 83 POINT_GOLD_DOUBLE_BONUS, // 84 POINT_ITEM_DROP_BONUS, // 85 - /// ȸ /// + /// 회복 관련 /// POINT_POTION_BONUS, // 86 POINT_KILL_HP_RECOVER, // 87 @@ -1635,32 +1635,32 @@ enum EPointTypes POINT_STAT_RESET_COUNT = 112, POINT_HORSE_SKILL = 113, - POINT_MALL_ATTBONUS, // 114 ݷ +x% - POINT_MALL_DEFBONUS, // 115 +x% - POINT_MALL_EXPBONUS, // 116 ġ +x% - POINT_MALL_ITEMBONUS, // 117 x/10 - POINT_MALL_GOLDBONUS, // 118 x/10 - POINT_MAX_HP_PCT, // 119 ִ +x% - POINT_MAX_SP_PCT, // 120 ִŷ +x% + POINT_MALL_ATTBONUS, // 114 공격력 +x% + POINT_MALL_DEFBONUS, // 115 방어력 +x% + POINT_MALL_EXPBONUS, // 116 경험치 +x% + POINT_MALL_ITEMBONUS, // 117 아이템 드롭율 x/10배 + POINT_MALL_GOLDBONUS, // 118 돈 드롭율 x/10배 + POINT_MAX_HP_PCT, // 119 최대생명력 +x% + POINT_MAX_SP_PCT, // 120 최대정신력 +x% - POINT_SKILL_DAMAGE_BONUS, // 121 ų *(100+x)% - POINT_NORMAL_HIT_DAMAGE_BONUS, // 122 Ÿ *(100+x)% + POINT_SKILL_DAMAGE_BONUS, // 121 스킬 데미지 *(100+x)% + POINT_NORMAL_HIT_DAMAGE_BONUS, // 122 평타 데미지 *(100+x)% - POINT_SKILL_DEFEND_BONUS, // 123 ų - POINT_NORMAL_HIT_DEFEND_BONUS, // 124 Ÿ + POINT_SKILL_DEFEND_BONUS, // 123 스킬 방어 데미지 + POINT_NORMAL_HIT_DEFEND_BONUS, // 124 평타 방어 데미지 POINT_PC_BANG_EXP_BONUS, // 125 - POINT_PC_BANG_DROP_BONUS, // 126 PC ӷ ʽ + POINT_PC_BANG_DROP_BONUS, // 126 PC방 전용 드롭률 보너스 - POINT_ENERGY = 128, // 128 + POINT_ENERGY = 128, // 128 기력 - // ui . - // ̷ ϰ ʾ, - // uiTaskBar affect , - // Ŭ󸮾Ʈ blend_affect ʾ, - // ӽ÷ ̷ д. - POINT_ENERGY_END_TIME = 129, // 129 ð + // 기력 ui 용. + // 이렇게 하고 싶지 않았지만, + // uiTaskBar에서는 affect에 접근할 수 없고, + // 더구나 클라리언트에서는 blend_affect는 관리하지 않아, + // 임시로 이렇게 둔다. + POINT_ENERGY_END_TIME = 129, // 129 기력 종료 시간 - // Ŭ̾Ʈ Ʈ + // 클라이언트 포인트 POINT_MIN_WEP = 200, POINT_MAX_WEP, POINT_MIN_MAGIC_WEP, @@ -1668,7 +1668,7 @@ enum EPointTypes POINT_HIT_RATE, - //POINT_MAX_NUM = 255,=>stdafx.h / + //POINT_MAX_NUM = 255,=>stdafx.h 로/ }; typedef struct packet_points @@ -1684,8 +1684,8 @@ typedef struct packet_point_change DWORD dwVID; BYTE Type; - long amount; // ٲ - long value; // + long amount; // 바뀐 값 + long value; // 현재 값 } TPacketGCPointChange; typedef struct packet_motion @@ -1723,7 +1723,7 @@ typedef struct packet_set_item BYTE pos; DWORD vnum; BYTE count; - DWORD flags; // ÷ ߰ + DWORD flags; // 플래그 추가 long alSockets[ITEM_SOCKET_SLOT_MAX_NUM]; TPlayerItemAttribute aAttr[ITEM_ATTRIBUTE_SLOT_MAX_NUM]; } TPacketGCItemSet; @@ -1750,8 +1750,8 @@ typedef struct packet_set_item2 TItemPos Cell; DWORD vnum; BYTE count; - DWORD flags; // ÷ ߰ - DWORD anti_flags; // ÷ ߰ + DWORD flags; // 플래그 추가 + DWORD anti_flags; // 플래그 추가 bool highlight; long alSockets[ITEM_SOCKET_SLOT_MAX_NUM]; TPlayerItemAttribute aAttr[ITEM_ATTRIBUTE_SLOT_MAX_NUM]; @@ -1832,7 +1832,7 @@ typedef struct packet_shop_start struct packet_shop_item items[SHOP_HOST_ITEM_MAX_NUM]; } TPacketGCShopStart; -typedef struct packet_shop_start_ex // TSubPacketShopTab* shop_tabs . +typedef struct packet_shop_start_ex // 다음에 TSubPacketShopTab* shop_tabs 이 따라옴. { typedef struct sub_packet_shop_tab { @@ -1975,12 +1975,12 @@ typedef struct packet_move enum { QUEST_SEND_IS_BEGIN = 1 << 0, - QUEST_SEND_TITLE = 1 << 1, // 28 - QUEST_SEND_CLOCK_NAME = 1 << 2, // 16 + QUEST_SEND_TITLE = 1 << 1, // 28자 까지 + QUEST_SEND_CLOCK_NAME = 1 << 2, // 16자 까지 QUEST_SEND_CLOCK_VALUE = 1 << 3, - QUEST_SEND_COUNTER_NAME = 1 << 4, // 16 + QUEST_SEND_COUNTER_NAME = 1 << 4, // 16자 까지 QUEST_SEND_COUNTER_VALUE = 1 << 5, - QUEST_SEND_ICON_FILE = 1 << 6, // 24 + QUEST_SEND_ICON_FILE = 1 << 6, // 24자 까지 }; typedef struct packet_quest_info @@ -2003,8 +2003,8 @@ typedef struct packet_attack { BYTE header; DWORD dwVID; - DWORD dwVictimVID; // VID - BYTE bType; // + DWORD dwVictimVID; // 적 VID + BYTE bType; // 공격 유형 } TPacketGCAttack; typedef struct packet_c2c @@ -2074,7 +2074,7 @@ enum EPVPModes typedef struct packet_duel_start { BYTE header ; - WORD wSize ; // DWORD ? = (wSize - sizeof(TPacketGCPVPList)) / 4 + WORD wSize ; // DWORD가 몇개? 개수 = (wSize - sizeof(TPacketGCPVPList)) / 4 } TPacketGCDuelStart ; typedef struct packet_pvp @@ -2230,7 +2230,7 @@ enum typedef struct packet_guild_sub_grade { - char grade_name[GUILD_GRADE_NAME_MAX_LEN+1]; // 8+1 , ̸ + char grade_name[GUILD_GRADE_NAME_MAX_LEN+1]; // 8+1 길드장, 길드원 등의 이름 BYTE auth_flag; } TPacketGCGuildSubGrade; @@ -2271,7 +2271,7 @@ enum EGuildWarState GUILD_WAR_ON_WAR, GUILD_WAR_END, - GUILD_WAR_DURATION = 2*60*60, // 2ð + GUILD_WAR_DURATION = 2*60*60, // 2시간 }; typedef struct packet_guild_war @@ -2347,8 +2347,8 @@ typedef struct SRefineTable DWORD src_vnum; DWORD result_vnum; BYTE material_count; - int cost; // ҿ - int prob; // Ȯ + int cost; // 소요 비용 + int prob; // 확률 TMaterial materials[REFINE_MATERIAL_MAX_NUM]; } TRefineTable; @@ -2383,17 +2383,17 @@ enum SPECIAL_EFFECT SE_SUCCESS, SE_FAIL, SE_FR_SUCCESS, - SE_LEVELUP_ON_14_FOR_GERMANY, // 14϶ ( ) - SE_LEVELUP_UNDER_15_FOR_GERMANY,// 15϶ ( ) + SE_LEVELUP_ON_14_FOR_GERMANY, //레벨업 14일때 ( 독일전용 ) + SE_LEVELUP_UNDER_15_FOR_GERMANY,//레벨업 15일때 ( 독일전용 ) SE_PERCENT_DAMAGE1, SE_PERCENT_DAMAGE2, SE_PERCENT_DAMAGE3, SE_AUTO_HPUP, SE_AUTO_SPUP, - SE_EQUIP_RAMADAN_RING, // ʽ´ ϴ ߵϴ Ʈ - SE_EQUIP_HALLOWEEN_CANDY, // ҷ (-_-;) ߵϴ Ʈ - SE_EQUIP_HAPPINESS_RING, // ũ ູ ϴ ߵϴ Ʈ - SE_EQUIP_LOVE_PENDANT, // ߷Ÿ ҴƮ(71145) Ʈ (ߵƮ, Ʈ ƴ) + SE_EQUIP_RAMADAN_RING, // 초승달의 반지를 착용하는 순간에 발동하는 이펙트 + SE_EQUIP_HALLOWEEN_CANDY, // 할로윈 사탕을 착용(-_-;)한 순간에 발동하는 이펙트 + SE_EQUIP_HAPPINESS_RING, // 크리스마스 행복의 반지를 착용하는 순간에 발동하는 이펙트 + SE_EQUIP_LOVE_PENDANT, // 발렌타인 사랑의 팬던트(71145) 착용할 때 이펙트 (발동이펙트임, 지속이펙트 아님) }; typedef struct SPacketGCSpecialEffect @@ -2696,7 +2696,7 @@ typedef struct packet_hs_check_req AHNHS_TRANS_BUFFER Req; } TPacketHSCheck; -//NOTE : recv/send , bPacketData 븸 ٲ. +//NOTE : recv/send에 공통으로 생김, bPacketData의 내용만 바뀐다. typedef struct packet_xtrap_verify { BYTE bHeader; @@ -2714,7 +2714,7 @@ typedef struct packet_autoban_quiz // END_OF_AUTOBAN #ifdef __AUCTION__ -// Argument 뵵 cmd ٸ. +// Argument의 용도는 cmd에 따라 다르다. typedef struct SPacketCGAuctionCmd { BYTE bHeader; @@ -2740,7 +2740,7 @@ typedef struct SPacketGCSpecificEffect char effect_file[128]; } TPacketGCSpecificEffect; -// ȥ +// 용혼석 enum EDragonSoulRefineWindowRefineType { DragonSoulRefineWindow_UPGRADE, diff --git a/src/UserInterface/PythonApplication.h b/src/UserInterface/PythonApplication.h index 90850381..c511a5f1 100644 --- a/src/UserInterface/PythonApplication.h +++ b/src/UserInterface/PythonApplication.h @@ -80,7 +80,7 @@ class CPythonApplication : public CMSApplication, public CInputKeyboard, public CURSOR_SHAPE_COUNT, - // ̹ ȯ ӽ enumerate + // 안정적인 네이밍 변환을 위한 임시 enumerate NORMAL = CURSOR_SHAPE_NORMAL, ATTACK = CURSOR_SHAPE_ATTACK, TARGET = CURSOR_SHAPE_TARGET, @@ -254,16 +254,16 @@ class CPythonApplication : public CMSApplication, public CInputKeyboard, public protected: IGraphBuilder* m_pGraphBuilder; // Graph Builder - IBaseFilter* m_pFilterSG; // Sample Grabber - ISampleGrabber* m_pSampleGrabber; // ̹ ĸó ׷ + IBaseFilter* m_pFilterSG; // Sample Grabber 필터 + ISampleGrabber* m_pSampleGrabber; // 영상 이미지 캡처를 위한 샘플 그래버 IMediaControl* m_pMediaCtrl; // Media Control IMediaEventEx* m_pMediaEvent; // Media Event IVideoWindow* m_pVideoWnd; // Video Window IBasicVideo* m_pBasicVideo; - BYTE* m_pCaptureBuffer; // ̹ ĸó - LONG m_lBufferSize; // Video ũ - CGraphicImageTexture* m_pLogoTex; // ؽ - bool m_bLogoError; // б + BYTE* m_pCaptureBuffer; // 영상 이미지를 캡처한 버퍼 + LONG m_lBufferSize; // Video 버퍼 크기 변수 + CGraphicImageTexture* m_pLogoTex; // 출력할 텍스쳐 + bool m_bLogoError; // 영상 읽기 상태 bool m_bLogoPlay; int m_nLeft, m_nRight, m_nTop, m_nBottom; diff --git a/src/UserInterface/PythonExchange.h b/src/UserInterface/PythonExchange.h index 3e34ba3b..832ec01d 100644 --- a/src/UserInterface/PythonExchange.h +++ b/src/UserInterface/PythonExchange.h @@ -3,7 +3,7 @@ #include "Packet.h" /* - * ȯ â + * 교환 창 관련 */ class CPythonExchange : public CSingleton { @@ -86,7 +86,7 @@ class CPythonExchange : public CSingleton protected: bool m_isTrading; - bool m_elk_mode; // ũ Ŭؼ ȯ . + bool m_elk_mode; // 엘크를 클릭해서 교환했을때를 위한 변종임. TExchangeData m_self; TExchangeData m_victim; }; diff --git a/src/UserInterface/PythonItem.h b/src/UserInterface/PythonItem.h index 3b6b4b4d..9824758d 100644 --- a/src/UserInterface/PythonItem.h +++ b/src/UserInterface/PythonItem.h @@ -1,8 +1,8 @@ #pragma once -// Note : ȭ Item Update Rendering å -// Ÿ Icon Image Instance Ŵ ұ ְ -// ⵵ ϴ - 2003. 01. 13. [levites] +// Note : 화면상에 떨어진 Item의 Update와 Rendering을 책임지는 한편 +// 각 아이템의 데이타와 Icon Image Instance의 매니져 역할까지 주관 +// 조금 난잡해진거 같기도 하다 - 2003. 01. 13. [levites] #include "../EterGrnLib/ThingInstance.h" diff --git a/src/UserInterface/PythonMiniMap.h b/src/UserInterface/PythonMiniMap.h index e6bf29b1..0f7b880d 100644 --- a/src/UserInterface/PythonMiniMap.h +++ b/src/UserInterface/PythonMiniMap.h @@ -148,7 +148,7 @@ class CPythonMiniMap : public CScreen, public CSingleton DWORD dwDstTime; }; - // ij Ʈ + // 캐릭터 리스트 typedef struct { float m_fX; @@ -180,14 +180,14 @@ class CPythonMiniMap : public CScreen, public CSingleton float m_fMiniMapRadius; - // ׸... + // 맵 그림... LPDIRECT3DTEXTURE9 m_lpMiniMapTexture[AROUND_AREA_NUM]; - // ̴ϸ Ŀ + // 미니맵 커버 CGraphicImageInstance m_MiniMapFilterGraphicImageInstance; CGraphicExpandedImageInstance m_MiniMapCameraraphicImageInstance; - // ij ũ + // 캐릭터 마크 CGraphicExpandedImageInstance m_PlayerMark; CGraphicImageInstance m_WhiteMark; diff --git a/src/UserInterface/PythonNetworkStream.h b/src/UserInterface/PythonNetworkStream.h index db38104a..b855d771 100644 --- a/src/UserInterface/PythonNetworkStream.h +++ b/src/UserInterface/PythonNetworkStream.h @@ -154,7 +154,7 @@ class CPythonNetworkStream : public CNetworkStream, public CSingleton { diff --git a/src/UserInterface/PythonPlayer.h b/src/UserInterface/PythonPlayer.h index 50a61898..1da22bd4 100644 --- a/src/UserInterface/PythonPlayer.h +++ b/src/UserInterface/PythonPlayer.h @@ -7,13 +7,13 @@ class CInstanceBase; /* - * ij (ڽ ϴ ij) Ѵ. + * 메인 캐릭터 (자신이 조정하는 캐릭터) 가 가진 정보들을 관리한다. * - * 2003-01-12 Levites CPythonCharacter ־ Ը ʹ Ŀ - * ġ ָؼ и - * 2003-07-19 Levites ij ̵ ó CharacterInstance - * Ÿ ҿ Ϻ ÷̾ Ŭ - * Żٲ . + * 2003-01-12 Levites 본래는 CPythonCharacter가 가지고 있었지만 규모가 너무 커져 버린데다 + * 위치도 애매해서 따로 분리 + * 2003-07-19 Levites 메인 캐릭터의 이동 처리 CharacterInstance에서 떼어다 붙임 + * 기존의 데이타 보존의 역할에서 완벽한 메인 플레이어 제어 클래스로 + * 탈바꿈 함. */ class CPythonPlayer : public CSingleton, public IAbstractPlayer @@ -88,8 +88,8 @@ class CPythonPlayer : public CSingleton, public IAbstractPlayer float fnextEfficientPercentage; BOOL isCoolTime; - float fCoolTime; // NOTE : Ÿ ų - float fLastUsedTime; // â ϴ + float fCoolTime; // NOTE : 쿨타임 중인 스킬 슬롯을 + float fLastUsedTime; // 퀵창에 등록할 때 사용하는 변수 BOOL bActive; } TSkillInstance; @@ -161,15 +161,15 @@ class CPythonPlayer : public CSingleton, public IAbstractPlayer SKILL_PERFECT_MASTER, }; - // ڵ Ưȭ ü.. ̷ Ưȭ ó ۾ Ϸ ִ ϰ ᱹ Ưȭó. + // 자동물약 상태 관련 특화 구조체.. 이런식의 특화 처리 작업을 안 하려고 최대한 노력했지만 실패하고 결국 특화처리. struct SAutoPotionInfo { SAutoPotionInfo() : bActivated(false), totalAmount(0), currentAmount(0) {} - bool bActivated; // Ȱȭ Ǿ°? - long currentAmount; // - long totalAmount; // ü - long inventorySlotIndex; // κ丮 ε + bool bActivated; // 활성화 되었는가? + long currentAmount; // 현재 남은 양 + long totalAmount; // 전체 양 + long inventorySlotIndex; // 사용중인 아이템의 인벤토리상 슬롯 인덱스 }; enum EAutoPotionType @@ -227,7 +227,7 @@ class CPythonPlayer : public CSingleton, public IAbstractPlayer // Reserved - bool NEW_IsEmptyReservedDelayTime(float fElapsedtime); // ̹ ʿ - [levites] + bool NEW_IsEmptyReservedDelayTime(float fElapsedtime); // 네이밍 교정 논의 필요 - [levites] // Dungeon @@ -240,7 +240,7 @@ class CPythonPlayer : public CSingleton, public IAbstractPlayer // flying target set void Clear(); - void ClearSkillDict(); // ų ClearGame Ե Լ + void ClearSkillDict(); // 없어지거나 ClearGame 쪽으로 포함될 함수 void NEW_ClearSkillData(bool bAll = false); void Update(); diff --git a/src/UserInterface/PythonPlayerEventHandler.h b/src/UserInterface/PythonPlayerEventHandler.h index d8fd73d5..b1fa3675 100644 --- a/src/UserInterface/PythonPlayerEventHandler.h +++ b/src/UserInterface/PythonPlayerEventHandler.h @@ -63,9 +63,9 @@ class CPythonPlayerEventHandler : public CActorInstance::IEventHandler virtual void OnSetFlyTarget(); virtual void OnShoot(DWORD dwSkillIndex); - virtual void OnNoTarget() { /*Tracenf("Shoot : target ϴ.");*/ } - virtual void OnExplodingOutOfRange() { /*Tracenf("Shoot : Ÿ ϴ.");*/ } - virtual void OnExplodingAtBackground() { /*Tracenf("Shoot : 濡 ¾ҽϴ.");*/ } + virtual void OnNoTarget() { /*Tracenf("Shoot : target이 없습니다.");*/ } + virtual void OnExplodingOutOfRange() { /*Tracenf("Shoot : 사정거리가 끝났습니다.");*/ } + virtual void OnExplodingAtBackground() { /*Tracenf("Shoot : 배경에 맞았습니다.");*/ } virtual void OnExplodingAtAnotherTarget(DWORD dwSkillIndex, DWORD dwVID); virtual void OnExplodingAtTarget(DWORD dwSkillIndex); diff --git a/src/UserInterface/PythonShop.h b/src/UserInterface/PythonShop.h index 40ecbf6c..d285acbc 100644 --- a/src/UserInterface/PythonShop.h +++ b/src/UserInterface/PythonShop.h @@ -3,12 +3,12 @@ #include "Packet.h" /* - * ó + * 상점 처리 * - * 2003-01-16 anoa Ϸ - * 2003-12-26 levites + * 2003-01-16 anoa 일차 완료 + * 2003-12-26 levites 수정 * - * 2012-10-29 rtsummit ο ȭ tab ߰ shop Ȯ. + * 2012-10-29 rtsummit 새로운 화폐 출현 및 tab 기능 추가로 인한 shop 확장. * */ typedef enum diff --git a/src/UserInterface/PythonSkill.h b/src/UserInterface/PythonSkill.h index 8b11109c..9e9b7427 100644 --- a/src/UserInterface/PythonSkill.h +++ b/src/UserInterface/PythonSkill.h @@ -104,7 +104,7 @@ class CPythonSkill : public CSingleton SKILL_ATTRIBUTE_NEED_EMPTY_BOTTLE = (1 << 12), SKILL_ATTRIBUTE_NEED_POISON_BOTTLE = (1 << 13), SKILL_ATTRIBUTE_ATTACK_SKILL = (1 << 14), - SKILL_ATTRIBUTE_TIME_INCREASE_SKILL = (1 << 15), // attribute + SKILL_ATTRIBUTE_TIME_INCREASE_SKILL = (1 << 15), // 증지술 전용 attribute SKILL_ATTRIBUTE_CHARGE_ATTACK = (1 << 16), SKILL_ATTRIBUTE_PASSIVE = (1 << 17), SKILL_ATTRIBUTE_CANNOT_LEVEL_UP = (1 << 18), @@ -138,7 +138,7 @@ class CPythonSkill : public CSingleton enum { SKILL_GRADE_COUNT = 3, - SKILL_EFFECT_COUNT = 4, //ų ,, ̿ܿ ϶ Ʈ ߰. + SKILL_EFFECT_COUNT = 4, //스킬은 초,중,고급 이외에 마스터일때 이펙트 추가. SKILL_GRADE_STEP_COUNT = 20, SKILL_GRADEGAP = 25, }; @@ -243,8 +243,8 @@ class CPythonSkill : public CSingleton DWORD dwSkillAttribute; DWORD dwNeedWeapon; DWORD dwTargetRange; - WORD wMotionIndex; // - WORD wMotionIndexForMe; // + WORD wMotionIndex; // 없어질 변수 + WORD wMotionIndexForMe; // 없어질 변수 BOOL isRequirement; std::string strRequireSkillName; diff --git a/src/UserInterface/PythonTextTail.h b/src/UserInterface/PythonTextTail.h index ea59a0c0..ee14a4ad 100644 --- a/src/UserInterface/PythonTextTail.h +++ b/src/UserInterface/PythonTextTail.h @@ -3,7 +3,7 @@ #include "../eterBase/Singleton.h" /* - * ٴϴ ؽƮ ó + * 따라다니는 텍스트 처리 */ class CPythonTextTail : public CSingleton { @@ -20,8 +20,8 @@ class CPythonTextTail : public CSingleton CGraphicTextInstance* pLevelTextInstance; - // Todo : ̰ VID ٲٵ Ѵ. - // ijͰ ƨ ɼ + // Todo : 이건 전부 VID로 바꾸도록 한다. + // 도중 캐릭터가 없어질 경우 튕길 가능성이 있음 CGraphicObjectInstance * pOwner; DWORD dwVirtualID; @@ -29,7 +29,7 @@ class CPythonTextTail : public CSingleton float x, y, z; float fDistanceFromPlayer; D3DXCOLOR Color; - BOOL bNameFlag; // ̸ Բ Ӱ ÷ + BOOL bNameFlag; // 이름도 함께 켤것인지의 플래그 float xStart, yStart; float xEnd, yEnd;