Ir ao conteúdo
  • Cadastre-se

Java Definição de Plágio - Este código é plágio?


Ir à solução Resolvido por DiF,

Posts recomendados

Bom dia pessoal, vim aqui para buscar mais opinião sobre o assunto conforme o tópico. Atualmente curso engenharia da computação, e especificamente na matéria de computação gráfica e processamento de imagens, o professor passou um trabalho para desenvolver uma aplicação podendo ser desde exercícios em sala de aula, até um jogo. O que ocorre é o seguinte, eu achei um tutorial de como fazer um jogo, no qual eu segui passo a passo para desenvolve-lo. Porém, eu fui muito mais além do que o tutorial, criei tela de menu, mais opções de jogo, passar de fase, créditos, adicionei cheats, e alguma outras coisas. Porém ao mostrar ao professor, este disse que é plágio, fiquei em dúvida, será que este é o caso? Para melhor análise da situação vou disponibilizar ambos os códigos para que haja comparação.

 

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package nilprowjeqt;

import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.Rectangle;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import javax.swing.JPanel;
import javax.swing.Timer;
import java.util.Random;

/**
 *
 * @author puelon
 */
public class Gameplay extends JPanel implements KeyListener, ActionListener {

    private boolean play = false;
    private boolean venceu = false;
    private int score = 0;
    private int level = 0;
    private int faliceu = 0;
    private boolean pause = false;
    private int totalBricks = 21;

    private Timer time;
    private int delay = 10;

    private int playerX = 310;

    private int bolaX = 350;
    private int bolaY = 350;
    private int bolaXd = -1;
    private int bolaYd = -2;
    private MapGenerator map;

    public int winGame(int lvl) {
        getLevel(lvl);
        return getLevel(lvl) + 1;
    }

    public int getLevel(int lvl) {
        lvl = level;
        return lvl;
    }

    public int getBolaX(int posx) {
        posx = bolaX;
        return posx;
    }

    public int getBolaY(int posy) {
        posy = bolaY;
        return posy;
    }

    public int setBolaX(int posx) {
        getBolaX(posx);
        return getBolaX(posx);
    }

    public int setBolaY(int posy) {
        getBolaY(posy);
        return getBolaY(posy);
    }

    public static int rndRangeX(int start, int finish) {
        Random rnd = new Random();
        int rndInt = rnd.nextInt(finish + 1 - start) + start;
        return rndInt;
    }

    public static int rndRangeY(int start, int finish) {
        Random rnd = new Random();
        int rndInt = rnd.nextInt(finish + 1 - start) + start;
        return rndInt;
    }

    public Gameplay() {
        map = new MapGenerator(3, 7);
        addKeyListener(this);
        setFocusable(true);
        setFocusTraversalKeysEnabled(false);
        time = new Timer(delay, this);
        time.start();
        repaint();
    }

    @Override
    public void paint(Graphics g) {
        // fundo
        g.setColor(Color.black);
        g.fillRect(1, 1, 692, 592);
        // drawing map
        map.draw((Graphics2D) g);

        // borda        
        g.setColor(Color.yellow);
        g.fillRect(0, 0, 3, 592);
        g.fillRect(0, 0, 692, 3);
        g.fillRect(691, 0, 3, 592);

        //pontuação
        g.setColor(Color.white);
        g.setFont(new Font("serif", Font.BOLD, 25));
        g.drawString("" + score, 598, 30);

        // level
        g.setColor(Color.white);
        g.setFont(new Font("serif", Font.BOLD, 25));
        g.drawString("Level: " + level, 150, 30);

        //the paddle
        g.setColor(Color.blue);
        g.fillRect(playerX, 550, 100, 8);

        //the ball
        g.setColor(Color.white);
        g.fillOval(bolaX, bolaY, 20, 20);
        if (pause == true) {
            g.setColor(Color.red);
            g.setFont(new Font("serif", Font.BOLD, 30));
            g.drawString("Jogo Pausado!", 270, 300);
        }
        if (totalBricks <= 0) {
            play = false;
            venceu = true;
            bolaYd = 0;
            bolaXd = 0;
            g.setColor(Color.red);
            g.setFont(new Font("serif", Font.BOLD, 30));
            g.drawString("voce joga demais amigo, passou de nivel!", 90, 300);

            g.setFont(new Font("serif", Font.BOLD, 30));
            g.drawString("Pressione ENTER para prosseguir.", 190, 350);

        }

        if (bolaY > 570 && faliceu != 3) {
            play = false;
            bolaYd = 0;
            bolaXd = 0;

            g.setColor(Color.red);
            g.setFont(new Font("serif", Font.BOLD, 30));
            g.drawString("FALICEU, SEU PONTO FOI:" + score, 90, 300);

            g.setFont(new Font("serif", Font.BOLD, 30));
            g.drawString("Pressione ENTER para jogar novamente", 150, 350);
            level = 0;
            delay = 8;
        }
        if (bolaY > 570 && faliceu == 3) {
            play = false;
            bolaYd = 0;
            bolaXd = 0;

            g.setColor(Color.red);
            g.setFont(new Font("serif", Font.BOLD, 30));
            g.drawString("MOISES NAO CONSEGUE NE, PONTUAÇAO:" + score, 90, 300);

            g.setFont(new Font("serif", Font.BOLD, 30));
            g.drawString("Pressione ENTER para jogar novamente", 150, 350);
            level = 0;
            delay = 8;
        }
    }
    
    @Override
    public void keyTyped(KeyEvent ke) {
    }

    @Override
    public void keyPressed(KeyEvent e) {
        if (e.getKeyCode() == KeyEvent.VK_D) {
            if (playerX >= 600) {
                playerX = 600;
            } else {
                moveRight();
            }
        }
        if (e.getKeyCode() == KeyEvent.VK_A) {
            if (playerX < 10) {
                playerX = 10;
            } else {
                moveLeft();
            }
        }
        if (e.getKeyCode() == KeyEvent.VK_ENTER && venceu == false) {
            if (!play) {
                play = true;
                venceu = false;
                bolaX = rndRangeX(270, 530);
                bolaY = rndRangeY(350, 670);
                bolaXd = -1;
                bolaYd = -2;
                playerX = 310;
                score = 0;
                totalBricks = 21;
                faliceu++;
                map = new MapGenerator(3, 7);
                repaint();
            }
        }
        if (e.getKeyCode() == KeyEvent.VK_ENTER && venceu == true) {
            if (!play) {
                play = true;
                venceu = false;
                bolaX = rndRangeX(270, 530);
                bolaY = rndRangeY(350, 670);
                bolaXd = -1;
                bolaYd = -2;
                playerX = 310;
                score = 0;
                level++;
                delay--;
                totalBricks = 21;
                map = new MapGenerator(3, 7);
                repaint();
            }
        }
        if (e.getKeyCode() == KeyEvent.VK_ESCAPE) {
            if (pause == false) {
                pause = true;
                int x = bolaX;
                int y = bolaY;
                setBolaY(y);
                setBolaX(x);
            } else {
                pause = false;
            }

        }
    }

    public void moveRight() {
        play = true;
        playerX += 20;
    }

    public void moveLeft() {
        play = true;
        playerX -= 20;
    }

    @Override
    public void keyReleased(KeyEvent ke) {
    }

    @Override
    public void actionPerformed(ActionEvent e) {
        time.start();
        repaint();
        if (play) {
            if (new Rectangle(bolaX, bolaY, 20, 20).intersects(new Rectangle(playerX, 550, 100, 8))) {
                bolaYd = -bolaYd;
            }
            A:
            for (int i = 0; i < map.map.length; i++) {
                for (int j = 0; j < map.map[0].length; j++) {
                    if (map.map[i][j] > 0) {
                        int brickX = j * map.brickWidth + 80;
                        int brickY = i * map.brickHeight + 50;
                        int brickWidth = map.brickWidth;
                        int brickHeight = map.brickHeight;

                        Rectangle rect = new Rectangle(brickX, brickY, brickWidth, brickHeight);
                        Rectangle ballRect = new Rectangle(bolaX, bolaY, 20, 20);
                        Rectangle brickRect = rect;

                        if (ballRect.intersects(brickRect)) {
                            map.setBrickValue(0, i, j);
                            totalBricks--;
                            score += 1;
                            if (bolaX + 19 <= brickRect.x || bolaX + 1 >= brickRect.x + brickRect.width) {
                                bolaXd = -bolaXd;

                            } else {
                                bolaYd = -bolaYd;
                            }
                            break A;
                        }
                    }
                }
            }
            if (pause == false) {
                bolaX += bolaXd;
                bolaY += bolaYd;
            }
            if (bolaX < 0) {
                bolaXd = -bolaXd;
            }
            if (bolaY < 0) {
                bolaYd = -bolaYd;
            }
            if (bolaX > 670) {
                bolaXd = -bolaXd;
            }

        }
        repaint();
    }
Eu não tenho uma versão mais antiga do que essa, mas de qualquer forma, um exemplo da versão final esta aqui:

 

 

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package nilprowjeqt;

import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.Rectangle;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import javax.swing.JPanel;
import javax.swing.Timer;
import java.util.Random;
import java.util.TimerTask;

/**
 *
 * @author puelon
 */
public class Gameplay extends JPanel implements KeyListener, ActionListener {

    private boolean play = false;
    private boolean venceu = false;
    private boolean morto = false;
    private boolean scored = false;
    private boolean ascored = false;
    private boolean bscored = false;
    private boolean cheat = false;
    private boolean airbreak = false;
    private boolean skiplevel = false;
    private int score = 0;
    private int ascore = 0;
    private int bscore = 0;
    private double points = 0;
    private int level = 1;
    private int faliceu = 1;
    private boolean pause = false;
    private int totalBricks = 21;
    private String ranks;
    private Menu menu;
    private creditos credits;

    public enum STATE {
        MENU,
        GAME,
        COMP,
        MP,
        creditos
    };

    public static STATE State = STATE.MENU;

    private Timer time;
    private int delay = 10;
    private int playerX = 310;
    private int playerY = 550;
    private int player2 = 310;
    private int bolaX = 350;
    private int bolaY = 350;
    private int bolaXd = -1;
    private int bolaYd = -2;
    private MapGenerator map;

    public boolean toggleCheat(boolean enabled) {
        enabled = cheat;
        if (cheat) {
            cheat = false;
        }
        if (!cheat) {
            cheat = true;
        }
        return enabled;
    }

    public int getPlayerPos(int y) {
        y = playerY;
        return y;
    }

    public String getRank(String rank) {
        String player = ranks;
        return player;
    }

    public String setRank(String player) {
        String rank = "";
        rank = getRank(rank);

        /* 
            rank = pontuação * (fase)/ morte
         */
        return rank;
    }

    public int winGame(int lvl) {
        getLevel(lvl);
        return getLevel(lvl) + 1;
    }

    public int getLevel(int lvl) {
        lvl = level;
        return lvl;
    }

    public int getBolaX(int posx) {
        posx = bolaX;
        return posx;
    }

    public int getBolaY(int posy) {
        posy = bolaY;
        return posy;
    }

    public int setBolaX(int posx) {
        getBolaX(posx);
        return getBolaX(posx);
    }

    public int setBolaY(int posy) {
        getBolaY(posy);
        return getBolaY(posy);
    }

    public static int rndRangeX(int start, int finish) {
        Random rnd = new Random();
        int rndInt = rnd.nextInt(finish + 1 - start) + start;
        return rndInt;
    }

    public static int rndRangeY(int start, int finish) {
        Random rnd = new Random();
        int rndInt = rnd.nextInt(finish + 1 - start) + start;
        return rndInt;
    }

    public Gameplay() {
        menu = new Menu();
        map = new MapGenerator(3, 7);
        addKeyListener(this);
        this.addMouseListener(new MouseInput());
        setFocusable(true);
        setFocusTraversalKeysEnabled(false);
        time = new Timer(delay, this);
        time.start();
        repaint();

    }

    @Override
    public void paint(Graphics g) {
        morto = false;

        if (State == STATE.GAME || State == STATE.COMP) {
            // fundo
            g.setColor(Color.black);
            g.fillRect(1, 1, 692, 592);
            // drawing map
            map.draw((Graphics2D) g);

            // borda        
            g.setColor(Color.yellow);
            g.fillRect(0, 0, 3, 592);
            g.fillRect(0, 0, 692, 3);
            g.fillRect(691, 0, 3, 592);

            //pontuação
            g.setColor(Color.white);
            g.setFont(new Font("serif", Font.BOLD, 25));
            g.drawString("" + score, 598, 30);

            // level
            g.setColor(Color.white);
            g.setFont(new Font("serif", Font.BOLD, 25));
            g.drawString("Level: " + level, 50, 30);

            // rank
            if (State == STATE.COMP) {
                g.setColor(Color.white);
                g.setFont(new Font("serif", Font.BOLD, 25));
                g.drawString("Rank: " + ranks, 280, 30);
            }
            //the paddle
            g.setColor(Color.blue);
            g.fillRect(playerX, playerY, 100, 8);

            //the ball
            g.setColor(Color.white);
            g.fillOval(bolaX, bolaY, 20, 20);
            if (pause == true) {
                g.setColor(Color.red);
                g.setFont(new Font("serif", Font.BOLD, 30));
                g.drawString("Jogo Pausado!", 270, 300);
            }

            if (cheat && airbreak) {
                g.setColor(Color.green);
                g.setFont(new Font("arial", Font.BOLD, 11));
                g.drawString("(CHEAT):airbreak ativado com sucesso!", 10, 50);

            }
            if (cheat == true && skiplevel == true) {
                play = false;
                venceu = true;
                morto = false;
                bolaYd = 0;
                bolaXd = 0;
                g.setColor(Color.red);
                g.setFont(new Font("serif", Font.BOLD, 30));
                g.drawString("voce joga demais amigo, passou de nivel!", 90, 300);
                g.setFont(new Font("serif", Font.BOLD, 30));
                g.drawString("Pressione ENTER para prosseguir.", 190, 350);
                g.setColor(Color.green);
                g.setFont(new Font("arial", Font.BOLD, 11));
                g.drawString("(CHEAT):skiplevel ativado com sucesso!", 10, 50);
                if (level > 10) {
                    State = STATE.creditos;
                    level = 10;
                    g.setColor(Color.black);
                    g.fillRect(1, 1, 692, 592);
                    Font fnt = new Font("arial", Font.BOLD, 50);
                    g.setFont(fnt);
                    g.setColor(Color.white);
                    g.drawString("FIM DE JOGO!", 190, 100);
                    Font fnt1 = new Font("arial", Font.BOLD, 35);
                    g.setFont(fnt1);
                    g.setColor(Color.white);
                    g.drawString("Créditos", 290, 200);
                    Font fnt2 = new Font("arial", Font.ITALIC, 20);
                    g.setFont(fnt2);
                    g.setColor(Color.white);
                    g.drawString("AGRADECIMENTOS", 270, 250);
                    Font fnt3 = new Font("arial", Font.ITALIC, 20);
                    g.setFont(fnt3);
                    g.setColor(Color.white);
                    g.drawString("Alex de Jesus Santos", 100, 300);
                    g.setColor(Color.white);
                    g.drawString("Gabriel 'Moises' Carvalho", 100, 330);
                    g.setColor(Color.white);
                    g.drawString("Jean Vitor Albertini", 100, 360);
                    g.setColor(Color.white);
                    g.drawString("Luiz B.P Alcantara", 100, 390);
                    g.setColor(Color.white);
                    g.drawString("Publio Elon", 100, 420);
                    Font fnt4 = new Font("arial", Font.BOLD, 25);
                    g.setFont(fnt4);
                    g.setColor(Color.white);
                    g.drawString("Turma: Engenharia da Computaçao          9º SEMESTRE", 15, 500);
                    Font fnt5 = new Font("arial", Font.BOLD, 25);
                    g.setFont(fnt5);
                    g.setColor(Color.white);
                    g.drawString("Ainda bem, até um outro dia", 150, 550);
                }
            } else if (State == STATE.creditos) {
                credits.render(g);
            }

            if (totalBricks <= 0 && morto == false) {
                play = false;
                venceu = true;
                morto = false;
                bolaYd = 0;
                bolaXd = 0;
                g.setColor(Color.red);
                g.setFont(new Font("serif", Font.BOLD, 30));
                g.drawString("voce joga demais amigo, passou de nivel!", 90, 300);

                g.setFont(new Font("serif", Font.BOLD, 30));
                g.drawString("Pressione ENTER para prosseguir.", 190, 350);

            }

            if (bolaY > 570 && faliceu != 3) {
                play = false;
                bolaYd = 0;
                bolaXd = 0;
                morto = true;
                double defeat;
                defeat = points * 0.10;
                defeat = points - defeat;
                g.setColor(Color.red);
                g.setFont(new Font("serif", Font.BOLD, 30));
                g.drawString("FALICEU, SEU PONTO FOI:" + score, 90, 300);

                g.setFont(new Font("serif", Font.BOLD, 30));
                g.drawString("Pressione ENTER para jogar novamente", 150, 350);
                level = 0;
                delay = 8;

            }
            if (bolaY > 570 && faliceu == 3) {
                play = false;
                bolaYd = 0;
                bolaXd = 0;

                g.setColor(Color.red);
                g.setFont(new Font("serif", Font.BOLD, 30));
                g.drawString("MOISES NAO CONSEGUE NE, PONTUAÇAO:" + score, 90, 300);

                g.setFont(new Font("serif", Font.BOLD, 30));
                g.drawString("Pressione ENTER para jogar novamente", 150, 350);
                level = 0;
                delay = 8;
            }

        } else if (State == STATE.MENU) {
            menu.render(g);
        } else if (State == STATE.MP) {
            delay = 4;
            // fundo
            g.setColor(Color.black);
            g.fillRect(1, 1, 692, 592);
            // drawing map

            // borda        
            g.setColor(Color.yellow);
            g.fillRect(0, 0, 3, 592);
            // 692 é o valor do Y topo g.fillRect(0, 0, 692, 3);
            g.fillRect(691, 0, 3, 592);

            //pontuação player A
            g.setColor(Color.white);
            g.setFont(new Font("serif", Font.BOLD, 25));
            g.drawString("" + ascore, 598, 30);

            g.setColor(Color.white);
            g.setFont(new Font("serif", Font.BOLD, 25));
            g.drawString("" + bscore, 598, 550);

            /* PLAYER A */
            g.setColor(Color.blue);
            g.fillRect(player2, 20, 100, 8);

            g.setColor(Color.blue);
            g.fillRect(playerX, 550, 100, 8);

            // bola
            g.setColor(Color.white);
            g.fillOval(bolaX, bolaY, 20, 20);

            if (bolaY > 570 && State == STATE.MP) {
                scored = true;
                play = false;
                bolaYd = 310;
                bolaXd = 0;
                ascored = true;
                g.setColor(Color.green);
                g.setFont(new Font("arial", Font.BOLD, 30));
                g.drawString("Ponto do Jogador A", 10, 50);

            }
            if (bolaY < 0 && State == STATE.MP) {
                scored = true;
                play = false;
                bolaYd = 0;
                bolaXd = 0;
                bscored = true;
                g.setColor(Color.green);
                g.setFont(new Font("arial", Font.BOLD, 30));
                g.drawString("Ponto do Jogador B", 10, 560);
            }
            if (State == STATE.MP && scored == true) {
                bolaYd = 310;
                bolaXd = 100;
            }
        }

    }

    @Override
    public void keyTyped(KeyEvent ke) {
    }

    @Override
    public void keyPressed(KeyEvent e) {
        if (e.getKeyCode() == KeyEvent.VK_UP && State == STATE.GAME && playerY > 20) {
            moveUp();
        } else if (playerY < 20) {
            playerY = 20;
        }

        if (e.getKeyCode() == KeyEvent.VK_DOWN && State == STATE.GAME && playerY < 550) {
            moveDown();
        } else if (playerY < 20) {
            playerY = 550;
        }

        if (State == STATE.GAME || State == STATE.COMP || State == STATE.MP) {
            if (e.getKeyCode() == KeyEvent.VK_D) {
                if (playerX >= 600) {
                    playerX = 600;
                } else {
                    if (pause == false && airbreak == false && cheat == false) {
                        moveRight();
                    }
                    if (pause == true && airbreak == true && cheat == true) {
                        moveRight();
                    }
                }
            }
        }
        if (State == STATE.GAME || State == STATE.COMP || State == STATE.MP) {
            if (e.getKeyCode() == KeyEvent.VK_A) {
                if (playerX < 10) {
                    playerX = 10;
                } else {
                    if (pause == false) {
                        moveLeft();
                    }
                    if (pause == true && airbreak == true && cheat == true) {
                        moveLeft();
                    }
                }
            }
        }

        if (State == STATE.GAME || State == STATE.COMP || State == STATE.MP) {
            if (e.getKeyCode() == KeyEvent.VK_RIGHT) {
                if (player2 >= 600) {
                    player2 = 600;
                } else {
                    if (pause == false) {
                        moveRight2();
                    }
                }
            }
        }
        if (State == STATE.GAME || State == STATE.COMP || State == STATE.MP) {
            if (e.getKeyCode() == KeyEvent.VK_LEFT) {
                if (player2 < 10) {
                    player2 = 10;
                } else {
                    if (pause == false) {
                        moveLeft2();
                    }
                }
            }
        }

        if (e.getKeyCode() == KeyEvent.VK_ENTER && venceu == false && State != STATE.MP) {
            if (!play) {
                play = true;
                venceu = false;
                bolaX = rndRangeX(270, 530);
                bolaY = rndRangeY(450, 500);
                bolaXd = -1;
                bolaYd = -2;
                playerX = 310;
                totalBricks = 21;
                faliceu++;
                map = new MapGenerator(3, 7);
                repaint();
            }
        }
        if (e.getKeyCode() == KeyEvent.VK_ENTER && ascored == true && State == STATE.MP) {
            if (ascored) {
                ascore++;
                scored = false;
                ascored = false;
            }
            if (!play) {
                play = true;
                scored = false;
                bolaX = rndRangeX(270, 530);
                bolaY = 350;
                bolaXd = -1;
                bolaYd = -2;
                playerX = 310;
                player2 = 310;
                repaint();
            }
        }

        if (e.getKeyCode() == KeyEvent.VK_ENTER && bscored == true && State == STATE.MP) {
            if (bscored) {
                bscore++;
                scored = false;
                bscored = false;
            }
            if (!play) {
                play = true;
                scored = false;
                bolaX = rndRangeX(270, 530);
                bolaY = 350;
                bolaXd = -1;
                bolaYd = -2;
                playerX = 310;
                player2 = 310;
                repaint();
            }
        }

        if (e.getKeyCode() == KeyEvent.VK_ENTER && venceu == true && State != STATE.MP) {
            if (!play) {
                play = true;
                venceu = false;
                bolaX = rndRangeX(270, 530);
                bolaY = rndRangeY(450, 500);
                bolaXd = -1;
                bolaYd = -2;
                playerX = 310;
                totalBricks = 21;
                level++;
                delay--;
                map = new MapGenerator(3, 7);
                repaint();
            }
        }

        if (e.getKeyCode() == KeyEvent.VK_ESCAPE && State != STATE.MP) {
            if (pause == false) {
                pause = true;
                int x = bolaX;
                int y = bolaY;
                setBolaY(y);
                setBolaX(x);
            } else {
                pause = false;
            }

        }
        if (e.getKeyCode() == KeyEvent.VK_ADD && cheat == false && airbreak == false) {
            if (State == STATE.GAME) {
                {
                    cheat = true;
                    airbreak = true;
                }
            } else if (e.getKeyCode() == KeyEvent.VK_ADD && cheat == true && airbreak == true) {
                if (State == STATE.GAME) {
                    cheat = false;
                    airbreak = false;
                }
            }

        }
        if (e.getKeyCode() == KeyEvent.VK_SUBTRACT && cheat == false && skiplevel == false) {
            if (State == STATE.GAME) {
                {
                    cheat = true;
                    skiplevel = true;
                }
            } else if (e.getKeyCode() == KeyEvent.VK_SUBTRACT && cheat == true && skiplevel == true) {
                if (State == STATE.GAME) {
                    cheat = false;
                    skiplevel = false;
                }
            }

        }

    }

    /*    if(e.getKeyCode() == KeyEvent.VK_CONTROL && e.getKeyCode() == KeyEvent.VK_C && State == STATE.GAME)
        {
            toggleCheat(cheat);
            if(toggleCheat(cheat) == true){
                if(e.getKeyCode() == KeyEvent.VK_UP){
                    moveUp();
                }
            }
        }*/
// função do cheat
    public void moveUp() {
        if (cheat && airbreak) {
            play = true;
            playerY -= 30;
        }
    }

    // função do cheat2
    public void moveDown() {
        if (cheat && airbreak) {
            play = true;
            playerY += 30;
        }
    }

    public void moveRight() {
        play = true;
        playerX += 20;
    }

    public void moveLeft() {
        play = true;
        playerX -= 20;
    }

    public void moveRight2() {
        play = true;
        player2 += 20;
    }

    public void moveLeft2() {
        play = true;
        player2 -= 20;
    }

    @Override
    public void keyReleased(KeyEvent ke) {
    }

    @Override
    public void actionPerformed(ActionEvent e) {
        time.start();
        repaint();

        if (play) {
            if (new Rectangle(bolaX, bolaY, 20, 20).intersects(new Rectangle(playerX, 550, 100, 8))) {
                bolaYd = -bolaYd;
            }
            if (play && State == STATE.GAME && cheat == true && airbreak == true) {
                if (new Rectangle(bolaX, bolaY, 20, 20).intersects(new Rectangle(playerX, getPlayerPos(playerY), 100, 8))) {
                    bolaYd = -bolaYd;
                }
            }

            if (play && State == STATE.MP) {
                if (new Rectangle(bolaX, bolaY, 20, 20).intersects(new Rectangle(playerX, 549, 100, 8))) {
                    bolaYd = -bolaYd;
                }
            }
            if (play && State == STATE.MP) {
                if (new Rectangle(bolaX, bolaY, 20, 20).intersects(new Rectangle(player2, 20, 100, 8))) {
                    bolaYd = -bolaYd;
                }
            }
            A:
            for (int i = 0; i < map.map.length; i++) {
                for (int j = 0; j < map.map[0].length; j++) {
                    if (map.map[i][j] > 0) {
                        int brickX = j * map.brickWidth + 80;
                        int brickY = i * map.brickHeight + 50;
                        int brickWidth = map.brickWidth;
                        int brickHeight = map.brickHeight;

                        Rectangle rect = new Rectangle(brickX, brickY, brickWidth, brickHeight);
                        Rectangle ballRect = new Rectangle(bolaX, bolaY, 20, 20);
                        Rectangle brickRect = rect;
                        Rectangle paddleRect = new Rectangle(playerX, getPlayerPos(playerY - 22), 50, 8 + 1);

                        if (ballRect.intersects(brickRect) && State != STATE.MP) {
                            map.setBrickValue(0, i, j);
                            totalBricks--;
                            score += 1;
                            /* 
            rank = pontuação * (fase)/ morte
                             */
                            points = score * level / faliceu;

                            if (points >= 0 && points <= 21 && State == STATE.COMP) {
                                ranks = "iniciante";
                            }
                            if (points >= 22 && points <= 43 && State == STATE.COMP) {
                                ranks = "Aprendiz";
                            }
                            if (points >= 44 && points <= 88 && State == STATE.COMP) {
                                ranks = "Amador";
                            }
                            if (points >= 89 && points <= 200 && State == STATE.COMP) {
                                ranks = "Jogador";
                            }
                            if (points >= 201 && points <= 403 && State == STATE.COMP) {
                                ranks = "Veterano";
                            }
                            if (points >= 404 && points <= 808 && State == STATE.COMP) {
                                ranks = "Viciado";
                            }
                            if (points >= 404 && points <= 808 && State == STATE.COMP) {
                                ranks = "Viciado";
                            }
                            if (bolaX + 19 <= brickRect.x || bolaX + 1 >= brickRect.x + brickRect.width) {
                                bolaXd = -bolaXd;

                            } else {
                                bolaYd = -bolaYd;
                            }
                            break A;
                        }
                        if (paddleRect.intersects(brickRect) && State == STATE.GAME) {
                            map.setBrickValue(0, i, j);
                            totalBricks--;
                            score += 1;
                        }
                    }
                }
            }
            if (pause == false) {
                bolaX += bolaXd;
                bolaY += bolaYd;
            }
            if (bolaX < 0) {
                bolaXd = -bolaXd;
            }
            if (bolaY < 0 && State != STATE.MP) {
                bolaYd = -bolaYd;
            }
            if (bolaX > 670) {
                bolaXd = -bolaXd;
            }

        }

        repaint();
    }
}

 

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

34 minutos atrás, Publio Elon disse:

Porém ao mostrar ao infeliz do professor, este arrogantemente disse que é plágio, ao mesmo tempo que fiquei irritado, fiquei em dúvida, será que este é o caso?

 Acredito que o seu professor quisesse que você fizesse todo o desenvolvimento.

Teve um problema de comunicação entre você e ele.

Sugiro que atenda o que seu professor solicita, não encare ele como um sujeito malvado.

No mercado ocorre o mesmo tipo de conflito entre clientes e prestadores de serviço.

Faz parte do jogo.

Abraço
 

  • Obrigado 1
Link para o comentário
Compartilhar em outros sites

3 minutos atrás, T1000_2015 disse:

 Acredito que o seu professor quisesse que você fizesse todo o desenvolvimento.

Teve um problema de comunicação entre você e ele.

Sugiro que atenda o que seu professor solicita, não encare ele como um sujeito malvado.

No mercado ocorre o mesmo tipo de conflito entre clientes e prestadores de serviço.

Faz parte do jogo.

Abraço
 

Obrigado pela resposta amigo, é que o meu pensamento é o seguinte, eu não tenho certeza se é plágio por ser tutorial, por envolver questões acadêmicas e tudo mais, no caso isso é um vídeo, não necessariamente um código postado. Inclusive tentei falar com o mesmo por whatsapp, porque eu não estava presente no momento que os colegas do meu grupo apresentaram o código, só vou vê-lo novamente no dia da prova agora, ou seja é vai ou racha. Como eu disse, o código possui uma lógica similar mas o produto final em si, é outro. Não tenho propriedade para dizer se o meu código é plágio, ou não.

  • Obrigado 1
Link para o comentário
Compartilhar em outros sites

Plágio é uma palavra muito forte e um assunto sério, é um crime.

 

O que você fez foi seguir um tutorial e utilizar um código fornecido à comunidade. Você copiou algo, não plagiou.

 

O problema foi que seu professor queria algo que não fosse copiado, ou que aparentasse mais que foi você que fez a maioria das coisas. O fato de ter código em inglês e português deixa isso bem claro.

 

O que você pode fazer é ver se ele aceita um acordo de fazer algum jogo baseado naquele, feito do zero por você, ou o que ele acha justo mudar para não sei mais considerado cópia.

 

Quando as pessoas estão aprendendo elas sempre buscam seguir tutoriais, é algo normal. Como o amigo sugeriu, converse com seu professor amigavelmente, porque só quem tem a perder é você mesmo.

  • Obrigado 1
Link para o comentário
Compartilhar em outros sites

5 horas atrás, LiOoN disse:

Plágio é uma palavra muito forte e um assunto sério, é um crime.

 

O que você fez foi seguir um tutorial e utilizar um código fornecido à comunidade. Você copiou algo, não plagiou.

 

O problema foi que seu professor queria algo que não fosse copiado, ou que aparentasse mais que foi você que fez a maioria das coisas. O fato de ter código em inglês e português deixa isso bem claro.

 

O que você pode fazer é ver se ele aceita um acordo de fazer algum jogo baseado naquele, feito do zero por você, ou o que ele acha justo mudar para não sei mais considerado cópia.

 

Quando as pessoas estão aprendendo elas sempre buscam seguir tutoriais, é algo normal. Como o amigo sugeriu, converse com seu professor amigavelmente, porque só quem tem a perder é você mesmo.

Perfeitamente amigo. Aproximei junto ao professor após a ultima aula dele na faculdade e conversei com o mesmo, resumindo a história foi exatamente o que você disse, ao mesmo tempo foi o que o T1000_2015 também disse. Moral da história ou arrisco entregar este, ou faço outro. kkkkkkkkk

  • Curtir 1
  • Haha 1
Link para o comentário
Compartilhar em outros sites

Plágio é copiar o trabalho dos outros e apresentar como se fosse seu.

 

Se você citou as fontes, não há que se falar em plágio.

 

Se não citou, é melhor ir se acostumando a fazer isso, pois "esquecer" de fazer uma citação no TCC geralmente resulta em um esporro épico da banca e um bocado de retrabalho para atender às exigências que eles vão fazer só para complicar a sua vida.

 

Bater de frente com o professor raramente é uma estratégia vencedora. Você já conversou com ele, o lance agora é encontrar um meio-termo aceitável para vocês dois. Pergunte que tipo de adequação ele gostaria de ver no trabalho. Seja direto e específico para deixar as metas bem claras e não ter surpresas na hora da nota. 

 

 

Link para o comentário
Compartilhar em outros sites

  • Moderador
  • Solução

Olá,

 

O plágio consiste em ser uma cópia. Mesmo com fontes ainda é uma cópia. Mencionando as fontes, não altera o fato.

O lance é que o professor disse que é plágio porque ele espera que o aluno desenvolva do zero com as palavras dele, com a lógica dele e variáveis dele. 

 

Copiar e/ou seguir um tutorial para fazer um trabalho, só prejudica o aluno. É por isso que todos os professores, principalmente deste ramo de desenvolvimento, buscam nos principais fóruns e sites para ver se o aluno copiou algo ou realmente estudou e fez.

 

Como o código foi copiado, é de fato plágio. Nem há o que negar.

O maior problema que vejo no momento, é fazer uma reclamação do professor publicamente em um fórum que tem mais de meio milhão de usuários, onde seu professor pode ser um dos membros.

Este tópico, é um perfeito exemplo do que não se deve fazer. Portanto vamos manter o tópico, para que outros alunos saibam que copiar um código e/ou apenas uma fração de código no mundo acadêmico é plágio sim e nenhum professor gosta.

 

Por isso, alunos, evitem de copiar. Usem os tutoriais existentes como um auxílio para entender a lógica, mas façam com a ideia de vocês, com as variáveis de vocês. Jamais façam um trabalho igual ao que está na internet. A grande maioria (para não dizer todos) dos professores costumam procurar na internet códigos similares para ver se o aluno realmente fez.

 

Sou formado em Análise e Desenvolvimento de Sistemas e digo que isso é verdade, pois presenciei isso com alguns colegas. Os que copiaram do google/youtube/fóruns  todos não ganharam nota. E teve outros que foram mais além, em dia de provas entregava os códigos uns aos outros por meio de rede.  No fim, o professor SEMPRE descobre a cópia.

 

Este tópico ficará bloqueado e será usado para consultas, caso mais alguém tenha a dúvida se é plágio ou não.

 

Att,

Moderador DiF

  • Curtir 2
Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...