Code game xe qua cầu hẹp

Thứ hai , 15/05/2017, 08:01 GMT+7
     

Hướng dẫn các bạn code chương trình game qua cầu hẹp trong bài toán số 1 môn cơ sở lập trình

Giao diễn game như sau:

BÁO CÁO MÔN CƠ SỞ LẬP TRÌNH

BÀI SỐ 2

I.                   CLASS CAR

1.      KhaiBáoBiến

 

publicButtonattribute= newButton();

publicinttime = 40, waitingTime = 20, lastTime = 70;

publicboolcheck= true;

 

-   Khi class đượcgọithìđồngthời 1 xemới (biểudiễnbằng button) đượckhởitạo

-   Biến check dùngđểkiểmtraxenàođangchạy

 

2.      CácPhươngThứcSửDụng

 

-   publicCar: Hàmcontructornàydùngđểtạonêncácthuộctínhcủaxebaogồm: kíchthước , vịtríxe(tọađộx,y),hìnhảnh

-   publicvoidRunningStraight: Thayđổitọađộđiểmchoxechạythẳng

-   publicvoidRunningDiagonally: Thayđổitọađộđiểmchoxechạyxéo

-   publicboolFlag:Kiểmtraxemcờnàođangbật

-   publicboolLastFlag: Kiểmtracờcuối

-   publicboolFlagConstant:

 

 

II.                HÀM MAIN

1.      KhaiBáoBiếnToànCục

 

-   boolchangingWay: chuyểnhướngchạycủaxe

-   left= false       :Hướngtráidừngkhôngchoxechạytiếp

-   right = false : Hướngphảidừngkhôngchoxechạytiếp

-    flagLeft2= false,flagLeft3 = false: Trạngtháicủaxebêntrái

-   flagRight2= false, lagRight3 = false: Trạngtháicủaxebênphải

-    CarcreatingCar : Khởitạo 1 xe

-   Car [ ] CarLeft = newCar[3]: Tạo 3 xebêntrái

-    Car [ ] CarRight = newCar[3]: Tạo 3 xebênphải

 

2.      CácPhươngThứcSửDụng

 

-   privatevoidProcessingLeft: Xửlýcácxebênhướngtrái

-   privatevoidProcessingRight: XửLýcácxebênhướngphải

-   privatevoidAddCar: Tạoracácxe

Nội dung các hàm trong chương trình

private void ProcessingLeft()
        {
 
            CarLeft[0].RunningStraight(180, 1);
            if (CarLeft[0].FlagConstants())
            {
                CarLeft[1].RunningStraight(180 - 80, 1);
                if (CarLeft[1].FlagConstants())
                {
                    CarLeft[2].RunningStraight(180 - 160, 1);
 
                    left = true;
                }
            }
            if (changingWay == true)
            {
               pictureBox1.Visible = true;
               pictureBox3.Visible = true;
               pictureBox2.Visible = false;
              pictureBox4.Visible = false;
                if (CarRight[2].attribute.Location.X < 280)
                    CarRight[2].RunningStraight(-100, 2);
                if (left)
                {
                    if (CarLeft[0].check)
                    {
                        if (CarLeft[0].Flag())
                            flagLeft2 = true;
                        if (CarLeft[0].attribute.Location.X < 400)
                            CarLeft[0].RunningDiagonally(230, 1);
                        if (CarLeft[0].attribute.Location.Y < 235 && CarLeft[0].attribute.Location.X < 655)
                        {
                            CarLeft[0].RunningStraight(650, 1);
                            CarLeft[1].RunningStraight(180, 1);
                            CarLeft[2].RunningStraight(180 - 80, 1);
                        }
                        if (CarLeft[0].attribute.Location.X > 655)
                            CarLeft[0].RunningDiagonally(300, 2);
                        if (CarLeft[0].attribute.Location.X > 655 && CarLeft[0].attribute.Location.Y > 295)
                            CarLeft[0].RunningStraight(900, 1);
                        if (CarLeft[0].attribute.Location.X > 890)
                        {
                            CarLeft[0].attribute.Location = new Point(-100, 300);
                            CarLeft[0].check = false;
 
                        }
                    }
 
                    if (flagLeft2)
                    {
                        if (CarLeft[1].check)
                        {
                            if (CarLeft[1].Flag())
                                flagLeft3 = true;
                            if (CarLeft[1].attribute.Location.X < 400)
                                CarLeft[1].RunningDiagonally(230, 1);
                            if (CarLeft[1].attribute.Location.Y < 235 && CarLeft[1].attribute.Location.X < 655)
                            {
                                CarLeft[1].RunningStraight(650, 1);
                                CarLeft[2].RunningStraight(180, 1);
                            }
                            if (CarLeft[1].attribute.Location.X > 655)
                                CarLeft[1].RunningDiagonally(300, 2);
                            if (CarLeft[1].attribute.Location.X > 655 && CarLeft[1].attribute.Location.Y > 295)
                                CarLeft[1].RunningStraight(900, 1);
                            if (CarLeft[1].attribute.Location.X > 890)
                            {
                                CarLeft[1].attribute.Location = new Point(-100, 300);
                                CarLeft[1].check = false;
                            }
                        }
                        if (flagLeft3)
                        {
                            if (CarLeft[2].check)
                            {
                                if (CarLeft[2].LastFlag())
                                    changingWay = false;
                                if (CarLeft[2].attribute.Location.X < 400)
                                    CarLeft[2].RunningDiagonally(230, 1);
                                if (CarLeft[2].attribute.Location.Y < 235 && CarLeft[2].attribute.Location.X < 655)
                                    CarLeft[2].RunningStraight(650, 1);
                                if (CarLeft[2].attribute.Location.X > 655)
                                    CarLeft[2].RunningDiagonally(300, 2);
                                if (CarLeft[2].attribute.Location.X > 655 && CarLeft[2].attribute.Location.Y > 295)
                                    CarLeft[2].RunningStraight(900, 1);
 
                            }
                        }
                    }
                }
 
            }
            if (CarLeft[2].attribute.Location.X > 890)
            {
                CarLeft[2].attribute.Location = new Point(-100, 300);
                CarLeft[0].check = true;
                CarLeft[0].time = 40;
                CarLeft[1].check = true;
                CarLeft[1].time = 40;
                CarLeft[2].lastTime = 70;
                flagLeft2 = false;
                flagLeft3 = false;
                left = false;
            }
        }
private void AddCar()
        {
            //them xe trai
            creatingCar = new Car(-100, 300, Properties.Resources.car1);
            Controls.Add(creatingCar.attribute);
            CarLeft[0] = creatingCar;
            creatingCar = new Car(-100, 300, Properties.Resources.xevang);
            Controls.Add(creatingCar.attribute);
            CarLeft[1] = creatingCar;
            creatingCar = new Car(-100, 300, Properties.Resources.xe1);
            Controls.Add(creatingCar.attribute);
            CarLeft[2] = creatingCar;
            //them xe phai
            creatingCar = new Car(1100, 160, Properties.Resources.vang);
            Controls.Add(creatingCar.attribute);
            CarRight[0] = creatingCar;
            creatingCar = new Car(1100, 160, Properties.Resources.xe3);
            Controls.Add(creatingCar.attribute);
            CarRight[1] = creatingCar;
            creatingCar = new Car(1100, 160, Properties.Resources.xe4);
            Controls.Add(creatingCar.attribute);
            CarRight[2] = creatingCar;
        }
Kho ảnh sử dụng cho viết game: http://congnghegi.com/kho-anh-dung-de-viet-code-chuong-trinh-game-35-1610.html
Code game: Xe qua cầu hẹp

Download Code: Cick here

xe qua cầu hẹp trạm thu phí code game co so lap trinh uit edu do an mon hoc