<commit_before><commit_msg>Un fusil à pompe pour lol<commit_after>#-*- coding: utf-8 -*-

import pygame

from arme           import Arme
from lib.sprites    import Sprites
from projectiles.projectileDroitRouge import ProjectileDroitRouge

'''
calculTirs

Calcul 3 vecteur unitaires à partir de `tup`
Chacun créé en faisant tourner tup d'un certain angle

@param  {tuple}  tup    Le vecteur inital
@return {Liste}         Une liste de tuple
'''
def calculTirs(tup) :

    result = []
    angles = [-20, 0, 20]

    for angle in angles :
        v = pygame.math.Vector2(tup).rotate(angle)
        result.append((v.x, v.y))

    return result


'''
FusilPompe

Une arme pas très puissante
Mais qui tire 3 projectiles dispersé
'''
class FusilPompe(Arme) :

    delai = 700

    def __init__(self):

        self.sprites = Sprites('img/tiles_spritesheet.png')
        self.imageDefaut = self.sprites.sprite((432,0), (72, 72))

    def tirer(self, position, vecteur) :

        tirs = calculTirs(vecteur)

        if pygame.time.get_ticks() - self.dernierTir > self.delai :

            super(FusilPompe, self).tirer(position, vecteur)
            projectiles = []

            for direction in tirs :
                projectiles.append(ProjectileDroitRouge(position, direction))

            return projectiles

        else :
            return []
{'fraction_non_alphanumeric': 0.09828741623231571, 'fraction_numerical': 0.014892032762472078, 'mean_word_length': 2.574468085106383, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 4, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3055185', 'n_tokens_mistral': 479, 'n_tokens_neox': 453, 'n_words': 117}