Sprintemate est un nouvel éditeur Sprite pour le Commodore 64. Il fonctionne avec la plupart des navigateurs modernes sur Windows, Mac et Linux et est pur javascript et HTML - pas de plugins. Toutes les données sont traitées uniquement du côté client. Sprintemate prend en charge l'importation et l'exportation des formats de fichiers les plus courants pour le Commodore 64 (par exemple spritepad) et peut être utilisé comme visionneuse et éditeur sur presque tous les appareils avec un navigateur.
Le spiritémat est toujours en développement. Si vous l'aimez, faites-le moi savoir;) n'hésitez pas à soumettre des demandes de traction ou à soumettre des idées, des bugs, des demandes dans la section des problèmes. Acclamations!
Dernière version stable: https://spritemate.com/
Version bêta: https://beta.spritemate.com/
Vidéo d'une version antérieure: https://www.youtube.com/watch?v=n59axaeqdwe

Utiliser npm
$ npm install
$ npm run dev
| Symbole | Raccourci | Fonction |
|---|---|---|
![]() | - | Charge un fichier. Formats pris en charge: sprintemate (SPM), Spritepad (SPD, SPR) |
![]() | - | Enregistre un fichier. Formats pris en charge: Spritemate (SPM), Spritepad 2.0 et 1.8.1 (SPD), Source ASM (TXT) |
![]() | z | Défaire. Pour quand tu as foiré. |
![]() | Shift + Z | Refaire. Car quand tu as réalisé que ce n'était pas si mal |
![]() | d | Dessiner des pixels |
![]() | f | Remplissage des inondations |
![]() | e | gomme |
![]() | m | se déplacer |
| Symbole | Raccourci | Fonction |
|---|---|---|
![]() | m | Basculer entre le mode Singlecolor et le mode multicolore |
![]() | - | Shift Sprite à gauche |
![]() | - | Shift Sprite à droite |
![]() | - | Shift Sprite Up |
![]() | - | Shift Sprite vers le bas |
![]() | - | Flip sprite horizontal |
![]() | - | Flip sprite vertical |
![]() | - | Bascule d'affichage sur la grille en marche / arrêt |
![]() ![]() | - | Zoom de fenêtre / sortie |
| 1,2,3,4 | Sélectionnez la couleur individuelle, transparent, multicolore 1 ou multicolore 2 | |
| Shift + souris | Supprimer le pixel |
| Symbole | Raccourci | Fonction |
|---|---|---|
![]() | - | Étire sprite horizontalement |
![]() | - | Étire sprite verticalement |
![]() | - | Superposition Sprite suivante |
![]() ![]() | - | Zoom de fenêtre / sortie |
| Symbole | Raccourci | Fonction |
|---|---|---|
![]() | - | Créer un nouveau sprite |
![]() | - | Supprimer le sprite sélectionné |
![]() | - | Copier |
![]() | - | Coller |
![]() | - | Bascule d'affichage sur la grille en marche / arrêt |
![]() ![]() | - | Zoom de fenêtre / sortie |
| curseur à gauche et à droite | Cycle via la liste des sprites |
Au départ, je voulais retirer JQuery et JQuery de ce projet et le remplacer par Vanilla JS. Le temps de construction était passé à 10 secondes, ce que j'ai trouvé assez ennuyeux. La réplication de la fonctionnalité modale de JQuery était plus difficile que prévu, j'ai donc décidé d'exclure à nouveau jQuery du bundle JS et de le charger du CDN. Cela a considérablement réduit le temps de compilation à moins de 4 secondes. Dans l'ensemble, l'application reste extrêmement petite, le code d'application principal autour de 20 Ko et JQuery autour de 98 Ko.
Notez que deux modifications ont été introduites avec la fonction de dénomination de Sprite: les sprites commencent avec l'index numéro 0 au lieu de 1, par exemple le premier sprite est appelé "sprite_0" au lieu de "sprite_1". Cela était nécessaire pour le cohérence et ma santé mentale personnelle - en interne, le numéro d'index était toujours 0 au lieu de 1. L'autre modification est que les données de sprite exportées en tant que fichier ASM ou Basic n'aborderaient plus les sprites en incrémentant l'index. Cela signifie qu'un sprite garderait son nom, peu importe si vous le triez dans la liste des sprites à une position différente (ce qui semble évident, mais n'était pas comme ça auparavant).
La fonction de dénomination de Sprite est compatible vers l'arrière, donc lorsque vous chargez un fichier SPM plus ancien, les noms par défaut seront appliqués.
Le sprite invert (ou "négatif" dans spritepad) peut sembler un peu étrange en mode multicolore, mais ce n'est pas un bug. À Singlecolor, un 0 (transparent) est remplacé par un 1 (pixel) et vice versa, mais en multicolore, nous avons deux couleurs supplémentaires. Le sprintemate commandé les couleurs 3 et 4 dans ce cas, tout comme le Spritepad le fait.
Cela peut s'avérer utile lorsque vous travaillez avec plusieurs fichiers. Aussi un bon indicateur si le fichier n'a pas encore été enregistré. Notez qu'en raison de la nature de la façon dont les navigateurs enregistrent les fichiers et les systèmes d'exploitation gèrent la sécurité, un fichier peut enregistrer avec un nom légèrement différent si le même nom de fichier existe déjà dans l'emplacement de téléchargement (par exemple "MysPrites (1) .spm" au lieu de "mysprites.spm").
La barre de menu semble mal fonctionner pour certaines configurations, mais le problème n'est actuellement pas reproductible. Thx2 à Leissa pour des tests supplémentaires et découvrir que la désactivation du "blocage du contenu" dans Firefox pourrait résoudre le problème. Si vous rencontrez un problème reproductible avec la barre de menu, veuillez signaler la description ici: https://github.com/esshahn/spritemate/issues
Cette version se concentre sur une meilleure usabalité. Bien que techniquement aucune fonctionnalité n'ait été ajoutée, le flux de travail global devrait être meilleur maintenant. Par exemple, au lieu d'avoir quatre icônes différentes pour déplacer un sprite vers le haut, vers le bas, la gauche ou la droite, le nouvel outil de mouvement vous permet de le faire plus intuitif maintenant. Comme effet secondaire, moins d'icônes compliquent l'interface utilisateur.
L'option pour effacer les pixels a été dans le sprintemate auparavant (en maintenant «Maj» pendant le dessin), mais maintenant l'outil «Eraser» le rend plus visible et plus facile à utiliser dans un flux de travail à une main.
Une nouvelle option pour dupliquer un sprite a été introduite. Cela était auparavant possible par une combinaison de «copie», de «nouvelle» et de «pâte» (et le nouveau duplicata est en fait exactement cela), mais cela devrait ajouter à une expérience plus intuitive.
Il y a d'autres améliorations, comme l'icône «poubelle» visuellement plus distinctive pour supprimer un sprite. Tous combinés, le sprintemate doit commencer à vous sentir plus familier si vous êtes habitué à d'autres programmes de peinture comme Photoshop.
Bien que peu de fonctionnalités aient été ajoutées, il m'a fallu un certain temps pour terminer cette version. J'ai dû retourner beaucoup de code pour une nouvelle fonctionnalité vraiment cool que je n'ai pas pu travailler de manière fiable. Pour cette raison, j'ai dû maintenir deux branches de code et des fonctionnalités de backport dans la version stable. J'ai finalement décidé de mettre la nouvelle fonctionnalité en attente et de me concentrer sur les autres à la place.
Je n'ai eu aucune chance de travailler sur le sprintemate pendant des mois en raison de mes trucs commerciaux sucer tout mon temps libre. De plus, les commentaires s'arrêtaient récemment, ce qui ne me motivait pas trop non plus. Finalement, j'ai vérifié le trafic pour le spiritemate et j'ai été surpris quant à la quantité stable d'utilisateurs. J'ai donc décidé de consacrer à nouveau plus de temps à ce projet. Dans tous les cas, si vous aimez le sprintemate, vous pouvez faire une sacrée différence en me faisant savoir, soit par courrier (ingo at awsm dot de) ou en m'envoyant un tweet (@ awsm9000). Faites-moi savoir comment je peux améliorer le spirittémate pour vous!
Sprintemate enregistre les paramètres localement maintenant. Cela pourrait être un peu bancal encore et je connais au moins un cas où le code fonctionne mais ne devrait pas être à ma compréhension (mais qui suis-je pour juger le développeur ...). Quoi qu'il en soit, la fondation de plus d'options de configuration a été présentée pour de futures mises à jour.
Le sprintemate est maintenant en version bêta publique. Merci à tous les testeurs bêta qui ont aidé à trouver des bogues et à suggérer des fonctionnalités et des améliorations. Veuillez consulter la documentation sur GitHub pour obtenir un aperçu de la fonctionnalité.
Les actions les plus courantes ont reçu des raccourcis clavier pour un accès rapide. L'utilisation de raccourcis clavier dans un navigateur est toujours un peu délicat, car de nombreuses combinaisons sont prises par le navigateur (comme CMD / CTRL + C pour "Copy"). Par conséquent, certains raccourcis peuvent sembler moins intuitifs. Ces fonctions sont disponibles en appuyant sur les touches maintenant:
(1,2,3,4) - Définissez l'un des quatre stylos / couleurs disponibles (F) - basculer sur / off (D) - basculer entre les modes "Draw" et "Film" (Z) - UNDO, (Shift + Z) = Redo (M) - Togle Singlecolor / Multicolor)
Toggle Sprite superpose dans la fenêtre d'aperçu. Le sprite suivant sera utilisé comme superposition. La fenêtre d'aperçu montre à la fois des sprites et la fenêtre de l'éditeur montre l'autre sprite avec une visibilité réduite (comme Skinning Onion). Veuillez noter que les informations de superposition de sprite sont actuellement stockées au format sprintemate natif uniquement.