Improve company productivity with a Business Account.Sign Up

x
?
Solved

cant figure this out!

Posted on 2010-09-12
7
Medium Priority
?
413 Views
Last Modified: 2013-12-17
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Graphics;
using Microsoft.Xna.Framework.Input;

namespace VideoGame
{
    class UserControlledSprite : Sprite
    {


        public UserControlledSprite(Texture2D textureImage, Vector2 position,
            Point frameSize, int collisionOffset, Point currentFrame, Point sheetSize,
            Vector2 speed)
            : base(textureImage, position, frameSize, collisionOffset, currentFrame,
            sheetSize, speed)
        {
        }

        public UserControlledSprite(Texture2D textureImage, Vector2 position,
            Point frameSize, int collisionOffset, Point currentFrame, Point sheetSize,
            Vector2 speed, int millisecondsPerFrame)
            : base(textureImage, position, frameSize, collisionOffset, currentFrame,
            sheetSize, speed, millisecondsPerFrame)
        {
        }
    }
}



This is the error I got......

'VideoGame.UserControlledSprite' does not implement inherited abstract member 'VideoGame.Sprite.direction.get'      


C:\My XNA Games\Video Game\Video Game\UserControlledSprite.cs      Line 11      Column 11      VideoGame

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Graphics;
using Microsoft.Xna.Framework.Input;

namespace VideoGame
{
    class UserControlledSprite : Sprite
    {


        public UserControlledSprite(Texture2D textureImage, Vector2 position,
            Point frameSize, int collisionOffset, Point currentFrame, Point sheetSize,
            Vector2 speed)
            : base(textureImage, position, frameSize, collisionOffset, currentFrame,
            sheetSize, speed)
        {
        }

        public UserControlledSprite(Texture2D textureImage, Vector2 position,
            Point frameSize, int collisionOffset, Point currentFrame, Point sheetSize,
            Vector2 speed, int millisecondsPerFrame)
            : base(textureImage, position, frameSize, collisionOffset, currentFrame,
            sheetSize, speed, millisecondsPerFrame)
        {
        }
    }
}

Open in new window

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Graphics;
using Microsoft.Xna.Framework.Input;

namespace VideoGame
{
    class UserControlledSprite : Sprite
    {


        public UserControlledSprite(Texture2D textureImage, Vector2 position,
            Point frameSize, int collisionOffset, Point currentFrame, Point sheetSize,
            Vector2 speed)
            : base(textureImage, position, frameSize, collisionOffset, currentFrame,
            sheetSize, speed)
        {
        }

        public UserControlledSprite(Texture2D textureImage, Vector2 position,
            Point frameSize, int collisionOffset, Point currentFrame, Point sheetSize,
            Vector2 speed, int millisecondsPerFrame)
            : base(textureImage, position, frameSize, collisionOffset, currentFrame,
            sheetSize, speed, millisecondsPerFrame)
        {
        }
    }
}

Open in new window

Game1.cs
Program.cs
Sprite.cs
UserControlledSprite.cs
0
Comment
Question by:mike9380
5 Comments
 
LVL 65

Accepted Solution

by:
rockiroads earned 600 total points
ID: 33658872
maybe you need to implement the get method in your derived class

abstract methods you defined in the base class will have to be implemented in any subclasses eg public override ...
0
 
LVL 36

Assisted Solution

by:Miguel Oz
Miguel Oz earned 1000 total points
ID: 33659473
Your cpde defines this property an abstract:
        public abstract Vector2 direction
        {
            get;
        }
You must implement it in code  at (UserControlledSprite)
        private Vector2 GetDirection()
  {
   //return an object of type vector 2 based on your business logic
}
        public override Vector2 direction
        {
            get  GetDirection();
        }
0
 
LVL 8

Assisted Solution

by:Gururaj Badam
Gururaj Badam earned 400 total points
ID: 33682036
Looking at your attached code you've defined direction property in Sprite abstract class and have also marked it as abstract. You will have to define this in the derived class.

If that was not the intent, you can remove abstract keyword on the property in the sprite abstract class.
0
 
LVL 8

Expert Comment

by:Gururaj Badam
ID: 33707044
Hi Admin

Please refer to Comment/Response 33658872 & 33682036 point the same thing. Either or both of these should be accepted.
0
 

Author Comment

by:mike9380
ID: 33708671
I felt that both helped me because I implemented the get methods rockiroads suggested and also canceled the abstract in sprite.cs that novice novice suggested .They both helped me learn C# language better than Iknew before.
0

Featured Post

Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

This article aims to explain the working of CircularLogArchiver. This tool was designed to solve the buildup of log file in cases where systems do not support circular logging or where circular logging is not enabled
Native ability to set a user account password via AD GPO was removed because the passwords can be easily decrypted by any authenticated user in the domain. Microsoft recommends LAPS as a replacement and I have written an article that does something …
This tutorial covers a step-by-step guide to install VisualVM launcher in eclipse.
THe viewer will learn how to use NetBeans IDE 8.0 for Windows to perform CRUD operations on a MySql database.

606 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question