вопросик один
#6
Интернет версия задумывается не как аналог - это продолжение работы над ресурсами ПЗ как часть проекта «Энциклопедия о ПЗ». Мы делаем новую структуру и правила, исключающее множество возможных ошибок во время создания новых диалогов. Все данные (глобальные переменные) будут устанавливаться по одним правилам и в одной стройной структуре. Кстати говоря, не нужно будет переживать, и задумываться какую из команд использовать GSSetVar или GSSetVarMax… . Наш микрокод будет построен как объектно-ориентированный код. То есть каждый метод будет иметь свой объект или метод у объекта, или возвращать его свойства. Группы объектов будут унаследовать свойства и устанавливаться по логическим правилам для групп таких объектов. Сейчас код уже подготовлен на 100% для конверта в наш формат данных. Вот примерные замены и соответствия новых и старых команд в коде, встречающихся в моб-скриптах ПЗ:


<TABLE ALIGN=center BORDER=0 CELLPADDING=0> <TABLE BORDER=1 CELLPADDING=1>
<tr><td> Function </td><td> First-NewCOMMAND </td><td> First-COMMAND </td></tr>
<tr><td> AddLoot </td><td> AddLoot("HeroAlone","") </td><td> AddLoot(0,"HeroAlone","") </td></tr>
<tr><td> AddMob </td><td> AddMob("Zone3ObrVoev.mob") </td><td> AddMob("Zone3ObrVoev.mob") </td></tr>
<tr><td> AddRectToArea </td><td> AddRectToArea(1,47.6,156.9,93.7,210.5) </td><td> AddRectToArea(1,47.6,156.9,93.7,210.5) </td></tr>
<tr><td> AddRoundToArea </td><td> AddRoundToArea(1,230,220,15) </td><td> AddRoundToArea(1,230,220,15) </td></tr>
<tr><td> AddUnitToParty </td><td> AddUnitToParty("JunParty::JunBoy","Jun Male Hero") </td><td> AddUnitToParty(0,"JunParty::JunBoy","Jun Male Hero") </td></tr>
<tr><td> AttachParticles </td><td> AttachParticles(1,Hero) </td><td> AttachParticles( 1, GetObjectByName("Hero") ) </td></tr>
<tr><td> CastSpellPointObjFuture </td><td> CastSpellPointObjFuture("fireball",Heroes,3) </td><td> CastSpellPoint("fireball",GetFutureX(this,3),GetFutureY(this,3),GetFutureX(this,3),GetFutureY(this,3)) </td></tr>
<tr><td> CastSpellUnit </td><td> CastSpellUnit("invisibility{d2;d2;d2;d2;d2;d2;d2;d2}",50,50,Spirit) </td><td> CastSpellUnit("invisibility{d2;d2;d2;d2;d2;d2;d2;d2}",50,50,Spirit) </td></tr>
<tr><td> CastSpellUnitObj </td><td> CastSpellUnitObj("strength{d2;d2;d2;d2}",Healing02,Hero) </td><td> CastSpellUnit("strength{d2;d2;d2;d2}",GetX(Healing02),GetY(Healing02),GetObjectByName("Hero")) </td></tr>
<tr><td> CopyItems </td><td> CopyItems("Hero","JunParty::JunBoy") </td><td> CopyItems(0,"Hero","JunParty::JunBoy") </td></tr>
<tr><td> CopyLoot </td><td> CopyLoot("","JunParty") </td><td> CopyLoot(0,"","JunParty") </td></tr>
<tr><td> CopyStats </td><td> CopyStats("Hero","JunParty::JunBoy") </td><td> CopyStats(0,"Hero","JunParty::JunBoy") </td></tr>
<tr><td> CreateFX </td><td> CreateFX(62,62,3,10,30,"Scenar.wav") </td><td> CreateFX(62,62,3,10,30,"Scenar.wav") </td></tr>
<tr><td> CreateFXObj </td><td> CreateFXObj(Hero,2.5,15,30,"Toolsatzako01.wav") </td><td> CreateFX(GetX(GetObjectByName("Hero")),GetY(GetObjectByName("Hero")),2.5,15,30,"Toolsatzako01.wav") </td></tr>
<tr><td> CreateFXSource </td><td> CreateFXSource(-1,456,61,25,25,50,"Toolsteleport1.wav") </td><td> CreateFXSource(-1,456,61,25,25,50,"Toolsteleport1.wav") </td></tr>
<tr><td> CreateParticleSource </td><td> CreateParticleSource(1,0,0,0,2,"StartTrans") </td><td> CreateParticleSource( 1, 0,0,0, 2, "StartTrans" ) </td></tr>
<tr><td> CreateParticleSourceObj </td><td> CreateParticleSourceObj(2,Hero,-1,2,"TransForm") </td><td> CreateParticleSource( 2, GetX(GetObjectByName("Hero")),GetY(GetObjectByName("Hero")),-1, 2, "Transform" ) </td></tr>
<tr><td> CreateParty </td><td> CreateParty("JunParty") </td><td> CreateParty(0,"JunParty") </td></tr>
<tr><td> CreatePointLight </td><td> CreatePointLight(12,226.5,14.6,27,-20,100,255,0) </td><td> CreatePointLight(12,226.5,14.6,27,-20,100,255,0) </td></tr>
<tr><td> DeletePointLight </td><td> DeletePointLight(12) </td><td> DeletePointLight(12) </td></tr>
<tr><td> EnableObject </td><td> EnableObject(Hero,1) </td><td> BlockUnit(GetobjectByName("Hero"),1) </td></tr>
<tr><td> EraseQuestItem </td><td> EraseQuestItem(71) </td><td> EraseQuestItem(0,71) </td></tr>
<tr><td> FixItems </td><td> FixItems() </td><td> FixItems() </td></tr>
<tr><td> FixWorldTime </td><td> FixWorldTime(0) </td><td> FixWorldTime(0) </td></tr>
<tr><td> Follow </td><td> Follow(BodyGuard,Executive) </td><td> Follow (Bodyguard,Executive) </td></tr>
<tr><td> GiveDexterity </td><td> GiveDexterity(Hero,3) </td><td> GiveDexterity(GetObjectByName("Hero"),3) </td></tr>
<tr><td> GiveItem </td><td> GiveItem("prototype.firewall") </td><td> GiveItem(0,"prototype.firewall") </td></tr>
<tr><td> GiveMoney </td><td> GiveMoney(1000) </td><td> GiveMoney(0,1000) </td></tr>
<tr><td> GiveQuestItem </td><td> GiveQuestItem("SackofGold") </td><td> GiveQuestItem(0,"SackofGold") </td></tr>
<tr><td> GiveSkill </td><td> GiveSkill(Hero,"sense",10) </td><td> GiveSkill(GetObjectByName("Hero"),"sense",10) </td></tr>
<tr><td> GiveStrength </td><td> GiveStrength(Hero,3) </td><td> GiveStrength(GetObjectByName("Hero"),3) </td></tr>
<tr><td> GiveUnitQuestItem </td><td> GiveUnitQuestItem(ORunner,"Letter2Orcs00") </td><td> GiveUnitQuestItem(ORunner,"Letter2Orcs00") </td></tr>
<tr><td> GSCancelVar </td><td> GSCancelVar("Polymorph") </td><td> GSSetvar(0,"Polymorph",3) </td></tr>
<tr><td> GSDelVar </td><td> GSDelVar("PigCount") </td><td> GSSetVar(0,"PigCount",0) </td></tr>
<tr><td> GSDoneVar </td><td> GSDoneVar("q.bz1g.q26g_s25_1") </td><td> GSSetVarMax(0,"b.elder.s25_3",1) </td></tr>
<tr><td> GSIncVar </td><td> GSIncVar("goblinbodycount") </td><td> GSSetVar(0,"goblinbodycount",Add(GSGetVar(0,"goblinbodycount"),1)) </td></tr>
<tr><td> GSInitVar </td><td> GSInitVar("b.elder.s12_1") </td><td> GSSetVarMax(0,"b.elder.s12_1",1) </td></tr>
<tr><td> GSSetVar </td><td> GSSetVar("Polymorph",4) </td><td> GSSetvar(0,"Polymorph",4) </td></tr>
<tr><td> GSSetVarMax </td><td> GSSetVarMax("FLAG1",111) </td><td> GSSetVarMax(0,"FLAG1",111) </td></tr>
<tr><td> GSSetVarVar </td><td> GSSetVarVar("z.gz9g.a1","gtime") </td><td> GSSetVar(0,"z.gz9g.a1",GSGetVar(0,"gtime")) </td></tr>
<tr><td> Guard </td><td> Guard(YDragon,78,336,7) </td><td> Guard(YDragon,78,336,7) </td></tr>
<tr><td> GuardObj </td><td> GuardObj(ORunner,ORunner,5) </td><td> Guard(ORunner,GetX(ORunner),GetY(ORunner),5) </td></tr>
<tr><td> GuardRnd </td><td> GuardRnd(Wolfpack,40,20,238,5,5) </td><td> for(i,Wolfpack) (Guard(i,Add(40,Random(20)),Add(238,Random(5)),5)) </td></tr>
<tr><td> HaveItem </td><td> HaveItem(71) </td><td> HaveItem(0,71) </td></tr>
<tr><td> HideObject </td><td> HideObject(BGoblinC,0) </td><td> HideObject(BGoblinC,0) </td></tr>
<tr><td> Idle </td><td> Idle(Human1) </td><td> Idle(Human1) </td></tr>
<tr><td> InflictDamage </td><td> InflictDamage(Heroes,1000) </td><td> InflictDamage(this,1000) </td></tr>
<tr><td> InvokeAlarm </td><td> InvokeAlarm(1,0,0) </td><td> InvokeAlarm(1,0,0) </td></tr>
<tr><td> InvokeAlarmObj </td><td> InvokeAlarmObj(2,BShaman) </td><td> InvokeAlarm(2,GetX(BShaman),GetY(BShaman)) </td></tr>
<tr><td> isAbsence </td><td> isAbsence(Mercs) </td><td> IsEqual(GetMercsNumber(0),0) </td></tr>
<tr><td> IsAlarm </td><td> IsAlarm(3) </td><td> IsAlarm(3) </td></tr>
<tr><td> IsAlive </td><td> IsAlive(Borka) </td><td> IsAlive(Borka) </td></tr>
<tr><td> IsCancelOrDone </td><td> IsCancelOrDone("TelC") </td><td> IsGreater(GSGetVar(0,"TelC"),1) </td></tr>
<tr><td> IsDead </td><td> IsDead(OrcG) </td><td> Every(i,OrcG,IsDead(i)) </td></tr>
<tr><td> IsDelVar </td><td> IsDelVar("PM") </td><td> Not(IsEqual(GSGetVar(0,"PM"),1)) </td></tr>
<tr><td> IsDoneVar </td><td> IsDoneVar("b.smith.m12") </td><td> IsEqual(GSGetVar(0,"b.smith.m12"),2) </td></tr>
<tr><td> IsEnemy </td><td> IsEnemy(Peasans) </td><td> Any(i,Peasans,IsEnemy(i,0)) </td></tr>
<tr><td> IsEqual </td><td> IsEqual(F1,0) </td><td> IsEqual(F1,0) </td></tr>
<tr><td> IsFriend </td><td> IsFriend(Peasans) </td><td> Not(Any(i,Peasans,IsEnemy(i,0))) </td></tr>
<tr><td> IsGreaterDistanceUnitPoint </td><td> IsGreaterDistanceUnitPoint(Dkins,6,160,7) </td><td> Every(i,Dkins,IsLess(DistanceUnitPoint(i,6,160),7)) </td></tr>
<tr><td> IsGreaterDistanceUnitUnit </td><td> IsGreaterDistanceUnitUnit(Heroes,MainGates,15) </td><td> IsGreater(DistanceUnitUnit(this,MainGates),15) </td></tr>
<tr><td> IsGreaterGSGetVar </td><td> IsGreaterGSGetVar("PigCount",5) </td><td> IsGreater(GSGetVar(0,"PigCount"),5) </td></tr>
<tr><td> IsGreaterSub </td><td> IsGreaterSub("GTime","FrTime",72) </td><td> IsGreater(Sub(GSGetVar(0,"GTime"),GSGetVar(0,"FrTime")),72) </td></tr>
<tr><td> IsInAreaObj </td><td> IsInAreaObj(1,Borka) </td><td> IsInArea(1,GetX(Borka),GetY(Borka)) </td></tr>
<tr><td> IsInitOrDelVar </td><td> IsInitOrDelVar("q.gz3g.q23g") </td><td> IsLess(GSGetVar(0,"q.gz3g.q23g"),2) </td></tr>
<tr><td> IsInitVar </td><td> IsInitVar("Goblin") </td><td> IsEqual(GSGetVar(0,"Goblin"),1) </td></tr>
<tr><td> IsLessDistanceUnitPoint </td><td> IsLessDistanceUnitPoint(Junophile,280,45,5) </td><td> IsLess(DistanceUnitPoint(Junophile,280,45),5) </td></tr>
<tr><td> IsLessDistanceUnitUnit </td><td> IsLessDistanceUnitUnit(Heroes,BoarCage,7) </td><td> Any(i,Heroes,IsLess(DistanceUnitUnit(i,BoarCage),7)) </td></tr>
<tr><td> IsNotAlive </td><td> IsNotAlive(OhranaJunHouse) </td><td> Every(i,OhranaJunHouse,Not(IsAlive(i))) </td></tr>
<tr><td> IsNotCancelVar </td><td> IsNotCancelVar("q.gz9g.q12g") </td><td> Not(IsEqual(GSGetVar(0,"q.gz9g.q12g"),3)) </td></tr>
<tr><td> IsNotDelVar </td><td> IsNotDelVar("b.witch.z38") </td><td> IsGreater(GSGetVar(0,"b.witch.z38"),0) </td></tr>
<tr><td> IsNotUsedLever </td><td> IsNotUsedLever(BanditsChest) </td><td> IsEqual(GetLeverState(BanditsChest),0) </td></tr>
<tr><td> IsNotUsedObj </td><td> IsNotUsedObj(Hero) </td><td> IsUnitBlocked(GetObjectByName("Hero")) </td></tr>
<tr><td> IsObjectSee </td><td> IsObjectSee(Pleshivy,Heroes) </td><td> GroupSize(GroupCross(UnitSee(Pleshivy),Heroes)) </td></tr>
<tr><td> IsPlayerInSafety </td><td> IsPlayerInSafety() </td><td> Not(IsPlayerIndanger(0)) </td></tr>
<tr><td> IsPlayerSee </td><td> IsPlayerSee(Warlord) </td><td> GroupHas(PlayerSee(0),Warlord) </td></tr>
<tr><td> isPresent </td><td> isPresent(Mercs) </td><td> IsGreater(GroupSize(Heroes),1) </td></tr>
<tr><td> isSameObject </td><td> isSameObject(GetLeader,Try1) </td><td> IsEqual(GetObjectID(GetUnitOfPlayer(0,0)),GetObjectID(Try1)) </td></tr>
<tr><td> IsUsedLever </td><td> IsUsedLever(BanditsChest) </td><td> IsEqual(GetLeverState(BanditsChest),1) </td></tr>
<tr><td> KillUnit </td><td> KillUnit(Captain) </td><td> KillUnit(Captain) </td></tr>
<tr><td> LeaveToZone </td><td> LeaveToZone("bz4g",0) </td><td> LeaveToZone(0,"bz4g",0) </td></tr>
<tr><td> LocalSetObj </td><td> LocalSetObj(Try1,Heroes) </td><td> Try1=this </td></tr>
<tr><td> LocalSetVar </td><td> LocalSetVar(F1,0) </td><td> F1=0 </td></tr>
<tr><td> MoveToPoint </td><td> MoveToPoint(Hero,63,66.8) </td><td> MoveToPoint(GetObjectByName("Hero"),63,66.8) </td></tr>
<tr><td> PlayAnimation </td><td> PlayAnimation(HumanHighFigh,"uspecial10") </td><td> Playanimation(HumanHighFigh,"uspecial10") </td></tr>
<tr><td> PlayMovie </td><td> PlayMovie("teleprt4.bik") </td><td> PlayMovie("teleprt4.bik") </td></tr>
<tr><td> PlayMusic </td><td> PlayMusic("Nature") </td><td> PlayMusic(0,"Nature") </td></tr>
<tr><td> Portal1 </td><td> Portal1() </td><td> Portal1() </td></tr>
<tr><td> Portal2 </td><td> Portal2() </td><td> Portal2() </td></tr>
<tr><td> QFinish </td><td> QFinish() </td><td> QFinish() </td></tr>
<tr><td> QObjArea </td><td> QObjArea(1) </td><td> QObjArea(1) </td></tr>
<tr><td> QObjGetItem </td><td> QObjGetItem(17) </td><td> QObjGetItem(17) </td></tr>
<tr><td> QObjKill </td><td> QObjKill(1000324) </td><td> QObjKillUnit("GetObject(1000324)") </td></tr>
<tr><td> QObjSee </td><td> QObjSee(1000086) </td><td> QObjSeeObject("GetObject(1000086)") </td></tr>
<tr><td> QObjUse </td><td> QObjUse(4636,1) </td><td> QObjUse("GetObject(4636)",1) </td></tr>
<tr><td> QStart </td><td> QStart("z3q1") </td><td> QStart("z3q1") </td></tr>
<tr><td> QuestComplete </td><td> QuestComplete("z6q3") </td><td> QuestComplete(0,"z6q3") </td></tr>
<tr><td> RecalcMercBriefings </td><td> RecalcMercBriefings() </td><td> RecalcMercBriefings() </td></tr>
<tr><td> RedeployParty </td><td> RedeployParty() </td><td> RedeployParty(0) </td></tr>
<tr><td> RemoveObjectFromServer </td><td> RemoveObjectFromServer(Sheriff) </td><td> RemoveUnitFromServer(GetObjectByName("Sheriff")) </td></tr>
<tr><td> RemoveQuestItem </td><td> RemoveQuestItem(DGuardian,11) </td><td> RemoveQuestItem(DGuardian,11) </td></tr>
<tr><td> RemoveUnitFromParty </td><td> RemoveUnitFromParty("Merc1") </td><td> RemoveUnitFromParty(0,"merc1") </td></tr>
<tr><td> ResetTarget </td><td> ResetTarget(Cyclope) </td><td> ResetTarget(Cyclope) </td></tr>
<tr><td> RotateTo </td><td> RotateTo(Human1,56.3,74) </td><td> RotateTo(Human1,56.3,74) </td></tr>
<tr><td> Run </td><td> Run(BGoblinC) </td><td> Run(GetObjectByName("BGoblinC")) </td></tr>
<tr><td> RunWorldTime </td><td> RunWorldTime(12) </td><td> RunWorldTime(12) </td></tr>
<tr><td> SendEvent </td><td> SendEvent(11224) </td><td> SendEvent(0,11224) </td></tr>
<tr><td> SendStringEvent </td><td> SendStringEvent("briefing s1") </td><td> SendStringEvent(0,"briefing s1") </td></tr>
<tr><td> Sentry </td><td> Sentry(Lizards,5,155) </td><td> Sentry(this,5,155) </td></tr>
<tr><td> SentryObj </td><td> SentryObj(Bodyg1,Orc1SP) </td><td> Sentry(Bodyg1,GetX(Orc1SP),GetY(Orc1SP)) </td></tr>
<tr><td> SetCP </td><td> SetCP(Human1,56.5616,74.8637,0) </td><td> SetCP(Human1,56.5616,74.8637,0) </td></tr>
<tr><td> SetCPObj </td><td> SetCPObj(BBoard,13.55) </td><td> SetCP(BBoard,GetX(BBoard),GetY(BBoard),13.55) </td></tr>
<tr><td> SetCPRnd </td><td> SetCPRnd(Peasans,192,3,125,3,0) </td><td> SetCP(this,Add(192,Random(3)),Add(125,Random(3)),0) </td></tr>
<tr><td> SetCurrentParty </td><td> SetCurrentParty("JunParty") </td><td> SetCurrentParty(0,"JunParty") </td></tr>
<tr><td> SetDiplomacy </td><td> SetDiplomacy(4,5,-1) </td><td> SetDiplomacy(4,5,-1) </td></tr>
<tr><td> SetPlayer </td><td> SetPlayer(Borka,0) </td><td> SetPlayer(Borka,0) </td></tr>
<tr><td> SetScience </td><td> SetScience(Crypt,0,0,1,0,0,0) </td><td> SetScience(Crypt,0,0,1,0,0,0) </td></tr>
<tr><td> SetWaterLevel </td><td> SetWaterLevel(5,-2.3,100) </td><td> SetWaterLevel(5,-2.3,100) </td></tr>
<tr><td> Sleep </td><td> Sleep(50) </td><td> Sleep(50) </td></tr>
<tr><td> SleepGSGetVar </td><td> SleepGSGetVar("DefaultChaseDelay") </td><td> Sleep(GSGetVar(0,"DefaultChaseDelay")) </td></tr>
<tr><td> SleepRnd </td><td> SleepRnd(500,200) </td><td> Sleep(Add(500,Random(200))) </td></tr>
<tr><td> SleepUntilIdle </td><td> SleepUntilIdle(Human1) </td><td> SleepUntilIdle(Human1) </td></tr>
<tr><td> SleepUntilUnitPoint </td><td> SleepUntilUnitPoint(Human11,44,78,1) </td><td> SleepUntil(IsLess(DistanceUnitPoint(Human11,44,78),1) ) </td></tr>
<tr><td> SwitchLeverState </td><td> SwitchLeverState(HeroPrisonOpened,1) </td><td> SwitchLeverState(HeroPrisonOpened,1) </td></tr>
<tr><td> TimeLag </td><td> TimeLag(4,23) </td><td> IsLess(GetWorldTime(),23) </td></tr>
<tr><td> UMAggression </td><td> UMAggression(RampageTigerRun1) </td><td> UMAggression(i) </td></tr>
<tr><td> UMClear </td><td> UMClear(Human5) </td><td> UMClear(Human5) </td></tr>
<tr><td> UMFear </td><td> UMFear(RampageTigerRun1,1) </td><td> UMFear(i,1) </td></tr>
<tr><td> UMFollow </td><td> UMFollow(Borka,GetLeader) </td><td> UMFollow(Borka,GetUnitOfPlayer(0,0)) </td></tr>
<tr><td> UMGuard </td><td> UMGuard(WTiger1,79,329,7) </td><td> UMGuard(i,79,329,7) </td></tr>
<tr><td> UMPlayer </td><td> UMPlayer(Human1) </td><td> UMPlayer(Human1) </td></tr>
<tr><td> UMRevenge </td><td> UMRevenge(Boars1) </td><td> UMRevenge(i) </td></tr>
<tr><td> UMSentry </td><td> UMSentry(Human1,44,78) </td><td> UMSentry(Human1,44,78) </td></tr>
<tr><td> UMSentryObj </td><td> UMSentryObj(Chasers,Hero) </td><td> UMSentry(this,GetX(GetObjectByName("Hero")),GetY(GetObjectByName("Hero"))) </td></tr>
<tr><td> UMSentryObjRnd </td><td> UMSentryObjRnd(s1,5,GetLeader,5) </td><td> for(i,s1)(UMSentry(i,Add(GetX(GetUnitOfPlayer(0,0)),Random(5)),Add(GetY(GetUnitOfPlayer(0,0)),Random(5)))) </td></tr>
<tr><td> UMSentryRnd </td><td> UMSentryRnd(Dkins,6,3,160,5) </td><td> UMSentry(i,Add(6,Random(3)),Add(160,Random(5))) </td></tr>
<tr><td> UMStandard </td><td> UMStandard(Q5dThreat) </td><td> UMStandard(Q5dThreat) </td></tr>
<tr><td> UnitInSquare </td><td> UnitInSquare(GetLeader,229,70,232,74) </td><td> UnitInSquare(GetLeader(),229,70,232,74) </td></tr>
<tr><td> Walk </td><td> Walk(Hero) </td><td> Walk(GetObjectByName("Hero")) </td></tr>
<tr><td> WasLooted </td><td> WasLooted(LoneWolf) </td><td> WasLooted(LoneWolf) </td></tr>
</table>



Всего 140 всевозможных комбинаций методов и свойств.
В Интернет версии, мы собираемся установить связь в графическом виде между выдачей заданий после вызова диалогов и инициализацией переменных диалогов после выполнения заданий, а также условия выполнения заданий, и все Это в одной табличной структуре! Постараемся сделать ядро-эмулятор всего этого хозяйства.
Мы предполагаем, что после такого «объединения» будет удобно создавать сложные задания и диалоги в ПЗ, пока только для одиночной игры, позже для МП.
Ответ


Сообщения в этой теме
вопросик один - от Twister - 23.07.2003, 15:52
вопросик один - от sun - 23.07.2003, 20:27
вопросик один - от Twister - 24.07.2003, 00:04
вопросик один - от sun - 24.07.2003, 11:24
вопросик один - от Twister - 24.07.2003, 13:18
вопросик один - от sun - 24.07.2003, 18:26
вопросик один - от Twister - 24.07.2003, 22:58
вопросик один - от Jet - 24.07.2003, 23:18
вопросик один - от Twister - 25.07.2003, 21:19
вопросик один - от Jet - 25.07.2003, 21:34
вопросик один - от sun - 26.07.2003, 13:26

Перейти к форуму:


Пользователи, просматривающие эту тему: 2 Гость(ей)