Skip to content

Conversation

unknown07724
Copy link

Vectors is a extension for Vectors
Blocks: Create vector with ID,direction and magnitude: creates a vector, vector direction, returns direction of the vector based on ID, vector magnitude, returns magnitude of the vector based on ID, Change Magnitude and direction, changes magnitude and direction of the vector based on ID, and List of IDs, lists all elements in IDs

@github-actions github-actions bot added the pr: new extension Pull requests that add a new extension label Apr 8, 2025
@fath11
Copy link
Contributor

fath11 commented Apr 9, 2025

there is no block for deleting vectors?

@fath11
Copy link
Contributor

fath11 commented Apr 9, 2025

also please run !format

@unknown07724
Copy link
Author

!format

@unknown07724
Copy link
Author

there is no block for deleting vectors?

Yes, just stop using a vector

@unknown07724
Copy link
Author

!format

@unknown07724
Copy link
Author

@fath11 there is now

Copy link

@yuri-kiss yuri-kiss left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this seems to literally just be a weird way of storing 2 dictionary's, what is the point of this extension, you can't even do any operations?

opcode: "vectorCreate",
blockType: Scratch.BlockType.COMMAND,
text: Scratch.translate(
"create vector with ID [ID], direction [DIRECTION] and magnitude [MAGNITUDE]"

This comment was marked as abuse.

}

vectorCreate(args) {
const id = args.ID;

This comment was marked as abuse.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

aren't they numbers, you can not put strings in there, and if you could, who would?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I see now, attempted to fix, fucked up the code

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

fixed the fuck up, now works better

}

// Vectors storage
const ids = [];

This comment was marked as abuse.


// Vectors storage
const ids = [];
const directions = {};

This comment was marked as abuse.


vectorMag(args) {
const id = args.ID;
return magnitudes[id] ?? Scratch.translate("vector not found");

This comment was marked as abuse.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

do I want people to wonder why their shit isn't working? if you said yes then you are wrong, the answer is no.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

do I want people to wonder why their shit isn't working? if you said yes then you are wrong, the answer is no.

@GarboMuffin said to chill the language

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

decided upon making it "null"


vectorDir(args) {
const id = args.ID;
return directions[id] ?? Scratch.translate("vector not found");

This comment was marked as abuse.

@unknown07724
Copy link
Author

unknown07724 commented Apr 20, 2025

Maps are < >, it does what it needs to do very well

@unknown07724
Copy link
Author

!format

@GarboMuffin
Copy link
Member

it would be wonderful if you would be more reasonable with your language on this issue tracker

@unknown07724
Copy link
Author

it already does what it needs to do, I don't want to spend multiple hours rewriting the entire extension

@unknown07724
Copy link
Author

!format

const id = Scratch.Cast.toString(args.ID);
return magnitudes[id] !== undefined
? magnitudes[id]
: Scratch.translate("null");
Copy link
Collaborator

@CST1229 CST1229 Jul 18, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

translating block return values is usually not a good idea; people may compare the result of this block to the string null (or whatever it is in their language) and then have it break in other languages that have a different string for it.
(null specifically is a fairly language-neutral word so it should be fine untranslated. or you could follow Scratch's precedent and return an empty string; this is what lists also do for example so I don't think it would be confusing)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
pr: new extension Pull requests that add a new extension
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants