Kết quả 1 đến 10 của 20
Chủ đề: [Release] scource codes
-
19-03-08, 12:05 PM #1
- Ngày tham gia
- Jun 2006
- Bài viết
- 23
- Thanks
- 0
- Thanked 0 Times in 0 Posts
[Release] scource codes
/add command source code
Credits go consept
Code:
void AddStats(int aIndex)
{
if (!IsAddCmd) return;
cObj->Init(aIndex);
if (!strcmpi(Message, "/add"))
{
MessageOutput(aIndex, "Useage: /add <Type> <Amount>");
MessageOutput(aIndex, "The price for Add is: %d, Maximum stats: %d", AddPrice, AddMax);
return;
}
if (cObj->Money < AddPrice)
{
MessageOutput(aIndex, "You are lacking zen! %d", AddPrice - cObj->Money);
return;
}
char Param1[100];
memset(Param1, 0x00, 100);
GetParam(1, Message, Param1);
int AddType = 0;
if (!strcmpi(Param1, "str")) AddType = 0xB8;
if (!strcmpi(Param1, "agi")) AddType = 0xBA;
if (!strcmpi(Param1, "vit")) AddType = 0xBC;
if (!strcmpi(Param1, "eng")) AddType = 0xBE;
if (!strcmpi(Param1, "cmd")) AddType = 0xD8;
if (!AddType)
{
MessageOutput(aIndex, "You have selected wrong type! The types are: str, agi, vit, eng, cmd");
return;
}
if (cObj->Class != 4 && AddType == 0xD8)
{
MessageOutput(aIndex, "Only Dark Lords can use the add cmd type.");
return;
}
char Param2[100];
memset(Param2, 0x00, 100);
GetParam(2, Message, Param2);
int StatsToAdd = atoi(Param2);
if (cObj->LvlUpPoints < StatsToAdd)
{
MessageOutput(aIndex, "You are lacking level up points! %d", StatsToAdd - cObj->LvlUpPoints);
return;
}
int NowStats = cObj->GetWord(AddType);
if ((StatsToAdd + NowStats) > AddMax)
{
MessageOutput(aIndex, "You are not allowed to add more than %d points!", AddMax);
return;
}
BYTE Packet[5] = {0xC1, 0x05, 0x0F3, 0x06};
Packet[4] = ((AddType % 16) ^ 8) / 2; // Nice algorithm by coNsept to convert from gObj Offsets to the add types
if (AddType == 0xD8) Packet[4] = 0x04;
if (StatsToAdd <= 100)
for (int i=0; i<StatsToAdd; i++)
CGLevelUpPointAdd(Packet, aIndex);
else
{
int Amount = (cObj->LvlUpPoints - StatsToAdd - 1);
cObj->SetInt(0xA4, Amount);
cObj->AddInt(AddType, StatsToAdd - 1);
CGLevelUpPointAdd(Packet, aIndex);
}
cObj->SetInt(0xB4, cObj->Money - AddPrice);
CGMoneySend(aIndex, cObj->Money - AddPrice);
cObj->Init(aIndex);
MessageOutput(aIndex, "You've added %d points. You have now %d points left.", StatsToAdd, cObj->LvlUpPoints);
if (StatsToAdd > 100)
MessageOutput(aIndex, "Please relog and your stats will be updated.");
/post source code by consept
Code:
void DataSendAll(unsigned char* Packet, int Length)
{
for (int i=6400; i<7400; i++)
if(gObjIsConnected(i))
DataSend(i, Packet, Length);
}
void SendPost(int wId, LPCSTR Command, LPCSTR Text)
{
if (!IsPost) return;
if (!gObjIsConnected(wId)) return;
if (!strcmpi(Command, "/Post"))
{
MessageOutput(wId, "[%s] Useage: /Post <Msg>.", szPrefix);
MessageOutput(wId, "[%s] Price for post: %d, Minimun Level: %d", szPrefix, PostCost, PostLevel);
return;
}
gObj_SetInfo(wId);
if (gObj.Level < PostLevel)
{
MessageOutput(wId, "[%s] You're level is too low to post!", szPrefix);
return;
}
if (gObj.Money < PostCost)
{
MessageOutput(wId, "[%s] You don't have enough money to post!", szPrefix);
return;
}
BYTE *Packet;
char Message[100];
Packet = (BYTE*) malloc(200);
memset(Packet, 0x00, 200);
*Packet = 0xC1;
*(Packet+2) = 0x00;
memcpy((Packet+3), gObj.Nick, strlen(gObj.Nick));
sprintf(Message, "@@[Global] %s", Text);
memcpy((Packet+13), Message, strlen(Message));
int Len = (strlen(Message) + 0x13);
*(Packet+1) = Len;
DataSendAll(Packet, Len);
int Amount = (gObj.Money - PostCost);
gObj_Write(wId, gObj_Money, Amount);
MoneySend(wId, Amount);
free (Packet);
Credits to consept
Code:
void PKClearGuard(int aIndex)
{
if (!PKClear_Active) return;
if (!gObjIsConnected(aIndex)) return;
lpObj->Init(aIndex);
int Price = PKClear_Price * (lpObj->PKLevel - 3);
if (lpObj->PKLevel < 4)
{
Send->PM(aIndex, "[PK Clear] You are already a commoner!");
return;
}
if (lpObj->Money < Price)
{
Send->PM(aIndex, "[PK Clear] You don't have enough money! Lacking %d.", Price - lpObj->Money);
return;
}
int Amount = lpObj->Money - Price;
lpObj->SetInt(0xB4, Amount);
GCMoneySend(aIndex, Amount);
lpObj->SetInt(0x101, 3);
GCPKLevelSend(aIndex, 3);
Send->PM(aIndex, "[PK Clear] You are a commoner again! %d Zen left.", Amount);
GCFireWorkSend(aIndex, lpObj->PosX, lpObj->PosY, 1);
Code:
switch (mobObj->Class)
{
case 249:
PKClearGuard(aIndex);
break;
By Cahir
Code:
void UseMakeCommand(DWORD gObjId, char * msg)
{
if(strlen(msg) < 18)
{
return;
}
int spaces = 0;
for(int i=0; i < strlen(msg); i++)
{
if(msg[i] == ' ')
spaces++;
}
if(spaces < 7)
return;
if(IsObjectGM(gObjId) == false)
{
return;
}
char * PosA;
PosA = strchr( msg , ' ' );
char * PosB;
PosB = strchr( PosA+1 , ' ' );
char * PosC;
PosC = strchr( PosB+1 , ' ' );
char * PosD;
PosD = strchr( PosC+1 , ' ' );
int ItemType, ItemNr, ItemLevel;
if(*(PosA+2) != ' ')
{
ItemType = (int)(*(PosA+1) - 48) * 10 + (int)(*(PosA+2) - 48);
}
else
{
ItemType = (*(PosA+1)) - 48;
}
if(*(PosB+2) != ' ')
{
ItemNr = (int)(*(PosB+1) - 48) * 10 + (int)(*(PosB+2) - 48);
}
else
{
ItemNr = (*(PosB+1)) - 48;
}
if(*(PosC+2) != ' ')
{
ItemLevel = (int)(*(PosC+1) - 48) * 10 + (int)(*(PosC+2) - 48);
}
else
{
ItemLevel = (*(PosC+1)) - 48;
}
int ItemSkill = (*(PosD+1)) - 48;
int ItemLuck = (*(PosD+3)) - 48;
int ItemOpt = (*(PosD+5)) - 48;
int ItemExc = (*(PosD+7)) - 48;
DWORD Item = ItemType * 512 + ItemNr;
InvItemCreate ( gObjId , GetObjectMap(gObjId) , GetObjectPosX(gObjId) , GetObjectPosY(gObjId) , Item , ItemLevel , 0 ,ItemSkill , ItemLuck, ItemOpt , -1 , ItemExc , 0 );
GCServerMsgStringSend("[Make]: You have made an item.", gObjId, 1);
.386
.Model flat, StdCall
Option CaseMap:none
Include \masm32\include\windows.inc
Include \masm32\include\user32.inc
Include \masm32\include\kernel32.inc
Include \masm32\include\masm32.inc
IncludeLib \masm32\lib\user32.lib
IncludeLib \masm32\lib\kernel32.lib
IncludeLib \masm32\lib\masm32.lib
TimePassed Proto Word, Word, Word, Word
StartEvent Proto Word, Word, Word, Word
Monster Proto Word, Word, Word, Word
Monster2 Proto Word, Word, Word, Word
Monster3 Proto Word, Word, Word, Word
EventOff Proto Word, Word, Word, Word
MensajeEvento Proto Word, Word, Word, Word
.Const
gObj Equ 658ACA8H
IDC_TIMER Equ 3
IDC_TIMER2 Equ 4
IDC_TIMER3 Equ 5
IDC_TIMER4 Equ 6
IDC_TIMER5 Equ 7
IDC_TIMER6 Equ 8
IDC_TIMER7 Equ 9
AllocSpace Equ 65000H
Buffer Equ 65000H
Buffer2 Equ 65000H
.Data
hMemory HANDLE ?
pMemory DWord ?
DataSend DD 0047DD20H
gObjTeleport DD 004E5E90H
GCServerCMD DD 00448F00H
MessageOutPut DD 004F0A80H
AllUserMsgS DD 00497C70H
MoneySend DD 0042F710H
gObjUserDie DD 004CA64BH
gObjAddMonster DD 004C4850H
gObjSetPosMonster DD 004C2E90H
gObjSetMonster DD 004C32E0H
ItemSerialCreate DD 004245A0H
PlayerIDBuf DB Buffer Dup(0)
PlayerDWSM DB Buffer2 Dup(0)
MensajeBievenida DB "Welcome to Sky Event", 0
TodaviaNoHora DB "Come back at 17:00 for enter Sky Event", 0
MensajeEventito DB "Sky Event has been Opened, you have 10 minutes for enter", 0
LimitePlayers DB "You can´t enter the event is full of players", 0
MensajeEventito1 DB "Sky Event Will Start in 5 Minutes", 0
MensajeEventito2 DB "Sky Event Will Start in 2 Minutes", 0
MensajeEventito3 DB "Sky Event Has Started!! Survive during 30 minutes!!", 0
NivelInsuficiente DB "You need to be at least lvl 50 for enter", 0
NoMoney DB "You need at least 25.000.000 zen for enter", 0
EventoCerrado DB "The event is closed, you can´t enter now.", 0
EventFinish DB "You have survive during 30 minutes! Congratulations!", 0
.Data?
lpLocalTime SYSTEMTIME <>
.Code
DllEntry Proc hInstDLL:HINSTANCE, reasonWord, reserved1Word
Mov Eax, TRUE
Ret
DllEntry EndP
NPCEvent Proc
Local PlayerIDWord
Local MapWord
Local XWord
Local YWord
Local lpObjWord
Local CounterWord
Local MobIDWord
Local MobLpObjWord
Push Ebx
Push Esi
Push Edi
Mov Eax, DWord Ptr Ss:[Ebp + 0CH] ; el lpObj que pusheamos en pChatProc
Mov lpObj, Eax
Mov Edx, DWord Ptr Ds:[Eax]
Mov PlayerID, Edx
Mov Cl, Byte Ptr Ds:[624521H]
Cmp Cl, 1
Je EventClosed
Mov Eax, lpObj
Mov Edx, DWord Ptr Ds:[Eax + 0A0H]
Cmp Edx, 50H
Jge RestarDinero
Lea Ecx, NivelInsuficiente
Push Ecx
Mov Edx, PlayerID
Push Edx
Call MessageOutPut
Jmp Finalizar
EventClosed:
Lea Eax, EventoCerrado
Push Eax
Mov Ecx, PlayerID
Push Ecx
Call MessageOutPut
Jmp Finalizar
NoTienesDinero:
Lea Eax, NoMoney
Push Eax
Mov Ecx, PlayerID
Push Ecx
Call MessageOutPut
Jmp Finalizar
RestarDinero:
Mov Eax, lpObj
Mov Ecx, DWord Ptr Ds:[Eax + 0B4H]
Cmp Ecx, 17D7840H
Jle NoTienesDinero
Sub Ecx, 17D7840H ;;Se le Resta el Dinero 25.000.000
Mov DWord Ptr Ds:[Eax + 0B4H], Ecx
Push Ecx
Mov Eax, PlayerID
Push Eax
Call MoneySend
Mov Map, 0AH ;Lorencia Map
Mov X, 0C8H ; Cord X
Mov Y, 0C8H ; Cord y
Mov Eax, Y
Push Eax
Mov Ecx, X
Push Ecx
Mov Edx, Map
Push Edx
Mov Eax, PlayerID
Push Eax
Call gObjTeleport
Add Esp, 8
Lea Eax, MensajeBievenida ;; Se le da la Bienvenida al Jugador al Entrar
Push Eax
Mov Edx, PlayerID
Push Edx
Call MessageOutPut
Mov Edx, PlayerID
IMul Edx, Edx, 10
Add Edx, pMemory
Mov Byte Ptr Ds:[Edx + 1], 1
Finalizar:
Ret
NPCEvent EndP
Eventime Proc
Mov Eax, DWord Ptr Ds:[0B679164H]
Mov Byte Ptr Ds:[624521H], 1
Invoke SetTimer, Eax, IDC_TIMER, 18000000, Addr TimePassed ;;5 horas
Ret
Eventime EndP
TimePassed Proc hwndWord, uMsgWord, idEventWord, dwTimeWord
Local MobIDWord
Local MobLpObjWord
Lea Eax, MensajeEventito1
Push Eax
Call AllUserMsgS
Invoke KillTimer, NULL, IDC_TIMER
Mov Byte Ptr Ds:[624521H], 0
Invoke SetTimer, NULL, IDC_TIMER6, 300000, Addr MensajeEvento
Ret
TimePassed EndP
MensajeEvento Proc hwndWord, uMsgWord, idEventWord, dwTimeWord
Mov Cl, Byte Ptr Ds:[6244D9H]
Cmp Ecx, 1
Je SaltaElMensaje
Lea Eax, MensajeEventito3
Push Eax
Call AllUserMsgS
Mov Byte Ptr Ds:[6244D9H], 1
SaltaElMensaje:
Invoke KillTimer, NULL, IDC_TIMER6
Mov Byte Ptr Ds:[624521H], 1
Call EventMessage
Ret
MensajeEvento EndP
StartEvent Proc hwndWord, uMsgWord, idEventWord, dwTimeWord
Local MobIDWord
Local MobLpObjWord
Mov Edx, DWord Ptr Ds:[0B679164H]
Invoke KillTimer, Edx, IDC_TIMER2
Lea Eax, MensajeEventito3
Push Eax
Call AllUserMsgS
Mov Byte Ptr Ds:[624521H], 1
Mov Ecx, 0AH
Push Ecx
Call gObjAddMonster
Add Esp, 4
Movsx Eax, Ax
Mov MobID, Eax
Mov Eax, MobID
IMul Eax, Eax, 1938H
Add Eax, gObj
Mov MobLpObj, Eax
Mov DWord Ptr Ds:[Eax + 104H], 0C9H
Mov Eax, MobLpObj
Mov DWord Ptr Ds:[Eax + 106H], 0C9H
Mov DWord Ptr Ds:[Eax + 109H], 0AH
Push 154H
Mov Eax, MobID
Push Eax
Call gObjSetMonster
Add Esp, 8
Ret
StartEvent EndP
CheckIds Proc
Local PlayerBaseIDWord
Mov PlayerBaseID, 1900H
Jmp ComparePlayerBase
PlayerLooper:
Add PlayerBaseID, 1
ComparePlayerBase:
Cmp PlayerBaseID, 1CE8H
Jge EndSending
Mov Eax, PlayerBaseID
IMul Eax, Eax, 1938H
Cmp DWord Ptr Ds:[Eax + 658ACACH], 3
Jnz PlayerLooper
Mov Edx, PlayerBaseID
IMul Edx, Edx, 10
Add Edx, pMemory
Mov Cl, Byte Ptr Ds:[Edx + 1]
Cmp Ecx, 1
Jnz PlayerLooper
Mov Eax, PlayerBaseID
IMul Eax, Eax, 1938H
Add Eax, gObj
Movsx Edx, Word Ptr Ds:[Eax + 10DH]
Cmp Edx, 0AH
Jnz PlayerLooper
Push 0
Push 0
Mov Edx, PlayerBaseID
Push Edx
Push 0
Push 0
Push 0
Push 0
Push 0
Push 180FH
Mov Eax, PlayerBaseID
IMul Eax, Eax, 1938H
Mov Dl, Byte Ptr Ds:[Eax + 658ADAEH]
Push Edx
Mov Ecx, PlayerBaseID
IMul Ecx, Ecx, 1938H
Mov Cl, Byte Ptr Ds:[Ecx + 658ADACH]
Push Ecx
Mov Edx, PlayerBaseID
IMul Edx, Edx, 1938H
Xor Eax, Eax
Mov Al, Byte Ptr Ds:[Edx + 658ADB1H]
Push Eax
Mov Ecx, PlayerBaseID
IMul Ecx, Ecx, 1938H
Mov Edx, DWord Ptr Ds:[Ecx + 658ACA8H]
Push Edx
Call ItemSerialCreate
Add Esp, 34H
Push 0
Push 0
Mov Edx, PlayerBaseID
Push Edx
Push 0
Push 0
Push 0
Push 0
Push 0
Push 1C0BH
Mov Eax, PlayerBaseID
IMul Eax, Eax, 1938H
Mov Dl, Byte Ptr Ds:[Eax + 658ADAEH]
Push Edx
Mov Ecx, PlayerBaseID
IMul Ecx, Ecx, 1938H
Mov Cl, Byte Ptr Ds:[Ecx + 658ADACH]
Push Ecx
Mov Edx, PlayerBaseID
IMul Edx, Edx, 1938H
Xor Eax, Eax
Mov Al, Byte Ptr Ds:[Edx + 658ADB1H]
Push Eax
Mov Ecx, PlayerBaseID
IMul Ecx, Ecx, 1938H
Mov Edx, DWord Ptr Ds:[Ecx + 658ACA8H]
Push Edx
Call ItemSerialCreate
Add Esp, 34H
Jmp PlayerLooper
EndSending:
Ret
CheckIds EndP
EventOff Proc hwndWord, uMsgWord, idEventWord, dwTimeWord
Invoke KillTimer, NULL, IDC_TIMER4
Invoke KillTimer, NULL, IDC_TIMER7
Lea Eax, EventFinish
Push Eax
Call AllUserMsgS
Call CheckIds
Invoke SetTimer, NULL, IDC_TIMER, 18000000, Addr TimePassed
Ret
EventOff EndP
EventMessage Proc
Invoke SetTimer, NULL, IDC_TIMER2, 30000, Addr Monster
Invoke SetTimer, NULL, IDC_TIMER5, 600000, Addr Monster2 ;;Despues de 10 minutos, cambiar monstruos
Invoke SetTimer, NULL, IDC_TIMER4, 1800000, Addr EventOff
Ret
EventMessage EndP
Monster Proc hwndWord, uMsgWord, idEventWord, dwTimeWord
Local MobIDWord
Local MobLpObjWord
Mov Ecx, 0AH
Push Ecx
Call gObjAddMonster
Add Esp, 4
Movsx Eax, Ax
Mov MobID, Eax
Mov Eax, MobID
IMul Eax, Eax, 1938H
Add Eax, gObj
Mov MobLpObj, Eax
Mov DWord Ptr Ds:[Eax + 104H], 0C7H
Mov Eax, MobLpObj
Mov DWord Ptr Ds:[Eax + 106H], 0C7H
Mov DWord Ptr Ds:[Eax + 109H], 0AH
Push 161H
Mov Eax, MobID
Push Eax
Call gObjSetMonster
Add Esp, 8
Mov Ecx, 0AH
Push Ecx
Call gObjAddMonster
Add Esp, 4
Movsx Eax, Ax
Mov MobID, Eax
Mov Eax, MobID
IMul Eax, Eax, 1938H
Add Eax, gObj
Mov MobLpObj, Eax
Mov DWord Ptr Ds:[Eax + 104H], 0C7H
Mov Eax, MobLpObj
Mov DWord Ptr Ds:[Eax + 106H], 0C7H
Mov DWord Ptr Ds:[Eax + 109H], 0AH
Push 15EH
Mov Eax, MobID
Push Eax
Call gObjSetMonster
Add Esp, 8
Mov Ecx, 0AH
Push Ecx
Call gObjAddMonster
Add Esp, 4
Movsx Eax, Ax
Mov MobID, Eax
Mov Eax, MobID
IMul Eax, Eax, 1938H
Add Eax, gObj
Mov MobLpObj, Eax
Mov DWord Ptr Ds:[Eax + 104H], 0C9H
Mov Eax, MobLpObj
Mov DWord Ptr Ds:[Eax + 106H], 0C9H
Mov DWord Ptr Ds:[Eax + 109H], 0AH
Push 161H
Mov Eax, MobID
Push Eax
Call gObjSetMonster
Add Esp, 8
Mov Ecx, 0AH
Push Ecx
Call gObjAddMonster
Add Esp, 4
Movsx Eax, Ax
Mov MobID, Eax
Mov Eax, MobID
IMul Eax, Eax, 1938H
Add Eax, gObj
Mov MobLpObj, Eax
Mov DWord Ptr Ds:[Eax + 104H], 0C9H
Mov Eax, MobLpObj
Mov DWord Ptr Ds:[Eax + 106H], 0C9H
Mov DWord Ptr Ds:[Eax + 109H], 0AH
Push 15EH
Mov Eax, MobID
Push Eax
Call gObjSetMonster
Add Esp, 8
Ret
Monster EndP
Monster2 Proc hwndWord, uMsgWord, idEventWord, dwTimeWord
Invoke KillTimer, NULL, IDC_TIMER2
Invoke KillTimer, NULL, IDC_TIMER5
Invoke SetTimer, NULL, IDC_TIMER7, 30000, Addr Monster3
Ret
Monster2 EndP
Monster3 Proc hwndWord, uMsgWord, idEventWord, dwTimeWord
Local MobIDWord
Local MobLpObjWord
Mov Ecx, 0AH
Push Ecx
Call gObjAddMonster
Add Esp, 4
Movsx Eax, Ax
Mov MobID, Eax
Mov Eax, MobID
IMul Eax, Eax, 1938H
Add Eax, gObj
Mov MobLpObj, Eax
Mov DWord Ptr Ds:[Eax + 104H], 0C7H
Mov Eax, MobLpObj
Mov DWord Ptr Ds:[Eax + 106H], 0C7H
Mov DWord Ptr Ds:[Eax + 109H], 0AH
Push 167H
Mov Eax, MobID
Push Eax
Call gObjSetMonster
Add Esp, 8
Mov Ecx, 0AH
Push Ecx
Call gObjAddMonster
Add Esp, 4
Movsx Eax, Ax
Mov MobID, Eax
Mov Eax, MobID
IMul Eax, Eax, 1938H
Add Eax, gObj
Mov MobLpObj, Eax
Mov DWord Ptr Ds:[Eax + 104H], 0C7H
Mov Eax, MobLpObj
Mov DWord Ptr Ds:[Eax + 106H], 0C7H
Mov DWord Ptr Ds:[Eax + 109H], 0AH
Push 169H
Mov Eax, MobID
Push Eax
Call gObjSetMonster
Add Esp, 8
Mov Ecx, 0AH
Push Ecx
Call gObjAddMonster
Add Esp, 4
Movsx Eax, Ax
Mov MobID, Eax
Mov Eax, MobID
IMul Eax, Eax, 1938H
Add Eax, gObj
Mov MobLpObj, Eax
Mov DWord Ptr Ds:[Eax + 104H], 0C9H
Mov Eax, MobLpObj
Mov DWord Ptr Ds:[Eax + 106H], 0C9H
Mov DWord Ptr Ds:[Eax + 109H], 0AH
Push 167H
Mov Eax, MobID
Push Eax
Call gObjSetMonster
Add Esp, 8
Mov Ecx, 0AH
Push Ecx
Call gObjAddMonster
Add Esp, 4
Movsx Eax, Ax
Mov MobID, Eax
Mov Eax, MobID
IMul Eax, Eax, 1938H
Add Eax, gObj
Mov MobLpObj, Eax
Mov DWord Ptr Ds:[Eax + 104H], 0C9H
Mov Eax, MobLpObj
Mov DWord Ptr Ds:[Eax + 106H], 0C9H
Mov DWord Ptr Ds:[Eax + 109H], 0AH
Push 169H
Mov Eax, MobID
Push Eax
Call gObjSetMonster
Add Esp, 8
Ret
Monster3 EndP
NewGObj Proc
Invoke GlobalAlloc, GMEM_MOVEABLE Or GMEM_ZEROINIT, AllocSpace
Mov hMemory, Eax
Invoke GlobalLock, hMemory
Mov pMemory, Eax
Ret
NewGObj EndPLần sửa cuối bởi vipnetpro, ngày 19-03-08 lúc 01:26 PM.
Khách viếng thăm hãy cùng vipnetpro xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!
-
19-03-08, 12:06 PM #2
- Ngày tham gia
- Mar 2007
- Đang ở
- Net4Viet Team
- Bài viết
- 1,453
- Thanks
- 40
- Thanked 302 Times in 108 Posts
Ðề: [Release] scource codes
"Hốt" lẫn C++ với ASM ở đâu về thế "anh zai "......
...anh đem về mà ko guide sao "mấy em" biết mà xài .... T_T...it's me noobKhách viếng thăm hãy cùng eddy xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!
-
19-03-08, 01:11 PM #3
Ðề: [Release] scource codes
Khách viếng thăm hãy cùng sontung306 xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!
-
19-03-08, 01:28 PM #4
- Ngày tham gia
- Jun 2006
- Bài viết
- 23
- Thanks
- 0
- Thanked 0 Times in 0 Posts
Ðề: [Release] scource codes
Khách viếng thăm hãy cùng vipnetpro xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!
-
19-03-08, 06:13 PM #5
- Ngày tham gia
- Feb 2007
- Đang ở
- 0x00000000
- Bài viết
- 525
- Thanks
- 75
- Thanked 1,050 Times in 223 Posts
Ðề: [Release] scource codes
Khách viếng thăm hãy cùng caothuphutho xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!
-
20-03-08, 12:46 PM #6
Ðề: [Release] scource codes
Khoái nhất là cái SkyEvent Thui ! Cái này có dùng cho bản SS I không nhỉ ? :d
Khách viếng thăm hãy cùng sontung306 xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!
-
22-03-08, 11:02 AM #7
Ðề: [Release] scource codes
codes này ném vào đâu đây ???? đặt nó vào đâu cho nó chạy vậy ta
Khách viếng thăm hãy cùng ductri xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!
-
22-03-08, 11:24 AM #8
- Ngày tham gia
- Mar 2008
- Bài viết
- 35
- Thanks
- 0
- Thanked 0 Times in 0 Posts
Ðề: [Release] scource codes
Khách viếng thăm hãy cùng Master**CoDer xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!
-
22-03-08, 08:32 PM #9
Ðề: [Release] scource codes
oh mong chờ reles đầu tiên của phú thọ team quá ..............
Khách viếng thăm hãy cùng mipmeo xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!
-
23-03-08, 07:55 AM #10
- Ngày tham gia
- Mar 2008
- Bài viết
- 35
- Thanks
- 0
- Thanked 0 Times in 0 Posts
Ðề: [Release] scource codes
Khách viếng thăm hãy cùng Master**CoDer xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!