@@ -171,12 +171,14 @@ async def __get_prefixes__(self, message):
171171 async def get_prefix (self , message ):
172172 # TODO Docs
173173 prefixes = await self .__get_prefixes__ (message )
174-
174+ message_content = message .content
175+ if "reply-parent-msg-id" in message .tags :
176+ message_content = message_content .split (" " , 1 )[1 ]
175177 if not isinstance (prefixes , str ):
176178 for prefix in prefixes :
177- if message . content .startswith (prefix ):
179+ if message_content .startswith (prefix ):
178180 return prefix
179- elif message . content .startswith (prefixes ):
181+ elif message_content .startswith (prefixes ):
180182 return prefixes
181183 else :
182184 return None
@@ -287,7 +289,10 @@ async def get_context(self, message, *, cls=None):
287289 prefix = await self .get_prefix (message )
288290 if not prefix :
289291 return cls (message = message , prefix = prefix , valid = False , bot = self )
290- content = message .content [len (prefix ) : :].lstrip () # Strip prefix and remainder whitespace
292+ content = message .content
293+ if "reply-parent-msg-id" in message .tags : # Remove @username from reply message
294+ content = content .split (" " , 1 )[1 ]
295+ content = content [len (prefix ) : :].lstrip () # Strip prefix and remainder whitespace
291296 view = StringParser ()
292297 parsed = view .process_string (content ) # Return the string as a dict view
293298
@@ -329,15 +334,9 @@ async def handle_commands(self, message):
329334 The message object to get content of and context for.
330335
331336 """
332- original_content = message .content
333-
334- if "reply-parent-msg-id" in message .tags :
335- message .content = message .content .split (" " , 1 )[1 ]
336337 context = await self .get_context (message )
337338 await self .invoke (context )
338339
339- message .content = original_content
340-
341340 async def invoke (self , context ):
342341 # TODO Docs
343342 if not context .prefix or not context .is_valid :
0 commit comments