delphi4arab منتديات دلفي للعرب
مصادر DelphiX و لعبة mario - نسخة قابلة للطباعة

+- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum)
+-- قسم : منتديات دلفي التقنية (https://delphi4arab.net/forum/forumdisplay.php?fid=6)
+--- قسم : دلفي والتعامل مع الرسوميات وبرمجة الألعاب (https://delphi4arab.net/forum/forumdisplay.php?fid=19)
+--- الموضوع : مصادر DelphiX و لعبة mario (/showthread.php?tid=4982)



مصادر DelphiX و لعبة mario - kachwahed - 06-03-2013

السلام عليكم
بعض الأمثلة لتطبيق لعبة Mario بدلفي
مثال من DelphiFr يستخدم DelphiX
PHP كود :
http://www.delphifr.com/codes/MARIO-BROS_39750.aspx 
مثال لمبرمج صيني مشابه يستخدم نفس المكونات
روابط موقتة:
كود :
mir.cr/0MTFJCM0
مثال آخر (برتغالي) دون مكونات في المرفق.

نسخة من DelphiX من Torry
كود :
http://www.torry.net/authorsmore.php?id=1181
نسخة أخرى معدلة أحدث
كود :
http://www.micrel.cz/Dx/

بالتوفيق.



مصادر DelphiX و لعبة mario - memoz - 08-10-2014

السلام عليكم.
هذه اللعبة المعروفة .... أين الكلب .... قمت ببرمجتها بلغة دلفي .... و احببت ان اقدم لكم السورس كود.
لم اعرف اين اضعه.... **** ان لا تحذف المشاركة لهذا السبب..


مصادر DelphiX و لعبة mario - karika2 - 09-10-2014

memoz كتب :السلام عليكم.
هذه اللعبة المعروفة .... أين الكلب .... قمت ببرمجتها بلغة دلفي .... و احببت ان اقدم لكم السورس كود.
لم اعرف اين اضعه.... **** ان لا تحذف المشاركة لهذا السبب..

شكراّ أخى ولكن يوجد خطأ عند التشغيل
كود :
{$R *.dfm} procedure get_res( ) ; var h,lh,hz:cardinal ; hr:Pointer; st:TFileStream; s:array[0..255]of char;ss:String; begin [color=Red]GetTempPathA(255,s);[/color] ss:=String (s); ss:=trim( (ss)); h:=FindResourceA(HInstance , 's1' ,'SND' ); hz:=SizeofResource( HInstance ,h); h:=LoadResource(HInstance ,h) ; hr:=LockResource(h); st:=TFileStream.Create(pansichar(ss+'\'+'Sound 1.wav'),fmCreate or fmOpenReadWrite ); st.Position :=0; lh:=st.Write (hr^,hz); st.Free; FreeResource(h);
الخطاّ المظلل بالاحمر


مصادر DelphiX و لعبة mario - memoz - 09-10-2014

استخدم هذا التابع.

procedure get_res( ) ;
var h,lh,hz:cardinal ;
hrTongueointer; st:TFileStream;
s:array[0..255]of char;ss:String;
begin

// GetTempPathA (255,s);
// ss:=String (s);
ss:= ExtractFilePath(Application.ExeName);

ss:=trim( (ss));

h:=FindResourceA(HInstance , 's1' ,'SND' );
hz:=SizeofResource( HInstance ,h);
h:=LoadResource(HInstance ,h) ;
hr:=LockResource(h);
st:=TFileStream.Create(pansichar(ss+'\'+'Sound 1.wav'),fmCreate or fmOpenReadWrite );
st.Position :=0;
lh:=st.Write (hr^,hz);
st.Free;
FreeResource(h);

h:=FindResourceA(HInstance , 's2' ,'snd' );
hz:=SizeofResource( HInstance ,h);
h:=LoadResource(HInstance ,h) ;
hr:=LockResource(h);
st:=TFileStream.Create(pansichar(ss+'\'+'Sound 2.wav'),fmCreate or fmOpenReadWrite );
st.Position :=0;
lh:=st.Write (hr^,hz);
st.Free;
FreeResource(h);

h:=FindResourceA(HInstance , 's3' ,'snd' );
hz:=SizeofResource( HInstance ,h);
h:=LoadResource(HInstance ,h) ;
hr:=LockResource(h);
st:=TFileStream.Create(pansichar(ss+'\'+'Sound 3.wav'),fmCreate or fmOpenReadWrite );
st.Position :=0;
lh:=st.Write (hr^,hz);
st.Free;
FreeResource(h);

end;


مصادر DelphiX و لعبة mario - karika2 - 09-10-2014

مشكلة اخرى
كود :
//Timer1.Enabled :=true; //Timer2.Enabled :=true; //Timer3.Enabled :=true; //Button4.Enabled :=true; end; procedure TForm1.Button5Click(Sender: TObject); var s:array[0..255]of char;ss:String; begin if get_on_pos ()= 1 then obj1:=Image1 ; if get_to_pos ()= 1 then obj1:=Image2 ; if get_tr_pos ()= 1 then obj1:=Image3 ; if get_on_pos ()= 2 then obj2:=Image1 ; if get_to_pos ()= 2 then obj2:=Image2 ; if get_tr_pos ()= 2 then obj2:=Image3 ; if get_on_pos ()= 3 then obj3:=Image1 ; if get_to_pos ()= 3 then obj3:=Image2 ; if get_tr_pos ()= 3 then obj3:=Image3 ; [color=Red] GetTempPathA (255,s);[/color] ss:=String (s); ss:=trim( (ss)); PlaySound(pansichar(ss+'\'+'Sound 2.wav'), 0, SND_FILENAME + SND_ASYNC); Timer4.Enabled :=true; end;
أرسل الكود كامل أفضلWink


مصادر DelphiX و لعبة mario - memoz - 09-10-2014

السلام عليكم
في كل خطأ من هذا النوع استبدل السطرين
كود :
GetTempPathA (255,s); ss:=String (s);
بالسطر التالي
كود :
ss:= ExtractFilePath(Application.ExeName);



مصادر DelphiX و لعبة mario - karika2 - 09-10-2014

شكراّ أخى ولكن ظهرت مشكلة فى هذا الكود
كود :
PlaySound(pansichar(ss+'\'+'Sound 2.wav'), 0, SND_FILENAME + SND_ASYNC);



مصادر DelphiX و لعبة mario - memoz - 09-10-2014

karika2 كتب :شكراّ أخى ولكن ظهرت مشكلة فى هذا الكود
كود :
PlaySound(pansichar(ss+'\'+'Sound 2.wav'), 0, SND_FILENAME + SND_ASYNC);

playsound يمكنك يا اخي ان تحذف كل الاسطر التي فيها استدعاء للتابع
:أو ان تقوم بتعليقها بالشكل التالي
كود :
// PlaySound(pansichar(ss+'\'+'Sound 2.wav'), 0, SND_FILENAME + SND_ASYNC);
حيث انه يقوم بتشغيل المقاطع الصوتية في اللعبة... وهو غير مؤثر على عمل اللعبة

اتمنى ان يعمل هذه المرة
و انا تحت امرك


مصادر DelphiX و لعبة mario - memoz - 13-11-2014

للاسف هذه اللعبة لم يتسنى لي الوقت الكامل لاتمامها.
اضعا بين ايديكم ... عسى ان يكملها احد الأخوة.
يمكن في اللعبة ان تقوم ببعثرة المربعات ...
و الفكرة منها بناء خوارزمية ذكية لإعادة ترتيبها ... وهو القسم الغير كامل .


مصادر DelphiX و لعبة mario - hatem-ghouthi - 06-03-2015

السلام عليكم . افكار مذهلة . ولكن الى الان لم استطع فهم الكودات المكتوبة